该图只有一个根。并以如下格式保存:
0 -> 1,
0 -> 2,
1 -> 3,
1 -> 4,
2 -> 4,
2 -> 5,
4 -> 5,
5 -> 2 (This is the cycle)
使用 Java 检测图中是否至少存在一个循环的最有效方法是什么?谢谢!
最佳答案
正如评论中提到的,可能是某种 DFS,例如
SET isCyclic to false
DFS(node)
IF isCyclic is true THEN
RETURN
FOR each neighbor in node.neighbors
IF node.visited is true THEN
SET isCyclic to true
RETURN
SET neighbor.visited to true
DFS(neighbor)
关于java - 单根有向无环图环检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38306404/