本文将介绍什么是强连通分量,求解强连通分量的三种算法Kosaraju算法、Tarjan算法、Garbow算法。因为算法的过程很容易理解,真正难的是如何理解算法的思想,写主这个的时候我也不定完全明白算法为什么这样,为什么这样做就可以,所以还涉及到相当一部分证明,希望总结完成之后能够有更深一层的了解。 **** **更新感想** 一定要真正搞明白了,可以通过去真正实现一下,要不以为明白了,我就是在实现的过程中发现自己之前的理解是错误的,在实现算法的过程是发现输出的结果不正确!!!坑死爹啊…………前前后后看这三个算法确实花费了不少时间,一定要多参考文件,检验自己理解是否正确的最好方法就是去实现,现在三个算法已经完成,但是很明显的还有很多地方要优化,Tarjan算法和Gabow算法居然比Kosaraju算法还要慢。。。。。。淡疼。。 继续优化,我也会尽力把这部分内容写清楚,希望能给以后遇见相同问题的同志们一个参考,在保证算法思想正确的同时说明白。先上完整代码[点这里!点这里!](https://github.com/tianzhuwei/-_-/tree/master/Introduction%20to%20Algorithms/Graph%20Algorithms/StronglyConnectedCompoents),写完了不容易啊,刚刚开始有被误导的意思。
添加算法介绍PPT文件,[点击下载](https://github.com/tianzhuwei/PPT/blob/master/%E6%B1%82%E8%BF%9E%E9%80%9A%E5%88%86%E9%87%8F%E7%AE%97%E6%B3%95%E4%BF%AE%E5%A4%8D%E7%89%88%E6%9C%AC.pptx)
**基于luosong同学PPT修改,改正其中的一些错误,感谢!** 以下为原文 **** >In the mathematical theory of directed graphs, a graph is said to be strongly connected if every vertex is reachable from every other vertex. The strongly connected components of an ar