【发布时间】:2010-10-09 16:36:15
【问题描述】:
如何检查有向图是否是无环的?算法是如何命名的?我将不胜感激。
【问题讨论】:
-
另一种支持以某种方式“修复”SO 错误答案的案例。
-
所以,嗯,我最感兴趣的是找到它所需的时间。所以,我只需要抽象算法。
-
您必须遍历所有边并检查所有顶点,因此下限为 O(|V| + |E|)。 DFS 和 BFS 都具有相同的复杂性,但如果您有递归,则 DFS 更容易编码,因为它会为您管理堆栈...
-
DFS 的复杂性不同。考虑具有节点 { 1 .. N } 和形式为 { (a, b) | 的边的图。 a
-
DFS 永远不会是 O(n!)。它访问每个节点一次,每个边最多访问两次。所以 O(|V|+|E|) 或 O(n)。
标签: algorithm theory directed-graph directed-acyclic-graphs