验证无向图是否有周期

时间:2015-07-01 20:12:15

标签: c graph cycle

我知道这个问题有时会被问过。但我还是无法理解,而且那些问题太旧了,不能回复......

我阅读了Kahn's Algorithm
也是关于DFS
Tarjan's strongly connected components algorithm
但我无法理解让它发挥作用的过程 到目前为止,我所做的就是初始化并提供图表 并找到了从vertéxA到B的最短路径。

1 个答案:

答案 0 :(得分:1)

只需稍加修改的简单DFS即可。

提示:我们对给定图进行DFS遍历。对于每个访问过的顶点'v',如果有一个相邻的'u'使得你已经访问过u并且你不是v的父亲,那么图中就有一个循环。

另请注意:无向图中的循环检测遵循与有向图完全不同的算法。有向图中的循环是不同的。

(希望你对DFS感到满意。)