联合查找和广度优先搜索的优缺点是什么?

问题描述 投票:0回答:1

联合查找和广度优先搜索的优缺点是什么?示例:理论算法复杂度,应用程序差异等。

algorithm graph graph-algorithm breadth-first-search union-find
1个回答
0
投票

我假设这是两个单独的问题。

Union-Find

理论算法复杂度

Union-Find的复杂度在使用路径压缩时为O(logn),在未使用时为O(n)。对此的严格证明可能超出您的期望,但是可以在Internet上找到它们。

应用程序

Union-Find在Kruskal的算法中用于查找最小生成树。联合查找算法用于跟踪通过Kruskal的中间步骤形成的不相交的最小生成树(等效类)。这是我唯一遇到的算法。可以在Internet上找到其他应用程序,例如以下。

https://en.wikipedia.org/wiki/Disjoint-set_data_structure#Applications

宽度优先搜索

理论算法复杂度

BFS的时间复杂度为O(V + E),其中V是顶点数,E是边数。对于完整的图,时间复杂度可以认为是O(V ^ 2)。对于稀疏图,时间复杂度可以认为是O(V)。时间复杂度来自以下事实:在无向图中,每个顶点仅浏览一次,在最坏的情况下,每个边缘浏览两次(或在有向图中,一次浏览)。

应用程序

[它们之间的最小边数)。 BFS的另一种用途是树的级别顺序遍历。可以在这里找到更多应用程序示例:

https://www.geeksforgeeks.org/applications-of-breadth-first-traversal/

© www.soinside.com 2019 - 2024. All rights reserved.