哪种方法最好Bfs或Dfs或Disjoint设置用于查找所有断开连接的图形

时间:2017-10-18 11:11:03

标签: depth-first-search breadth-first-search disjoint-sets disjoint-union

我们应该使用哪种方法来查找所有断开连接的图表以及原因?

BFS DFS 遍历都是遍历方法和多次遍历。我们可以找到所有断开连接的组件 另一种方法可以是kruskal(MST)中使用的 Disjoint Sets 来查找断开连接的组件。

1 个答案:

答案 0 :(得分:0)

仅仅因为您声明需要找到所有断开连接的图表,我建议使用BFS,因为它是complete,深度优先搜索不是。当应用于隐式表示的无限图时,BFS将找到目标状态,在您的场景中,将找到所有断开连接的图。另一方面,DFS可能会丢失在不包含目标状态的图形部分中,并且基本上可能会丢失。