可能重复:
Kruskal vs Prim
krukshal的算法或Prims算法哪一个能更好地找到最小生成树?
答案 0 :(得分:2)
我将添加一点赞成Prim的算法,我没有看到过。如果为x和y之间的距离给出N个点和距离函数d(x,y),则使用空间O(N)(但是时间N ^ 2)很容易实现Prim的算法。
从任意点A开始,创建一个大小为N-1的数组,为您提供从A到所有其他点的距离。选择与最短距离相关联的点B,生成树中的链接A和B,然后将阵列中的距离更新为已经记下到该另一个点的距离的最小值以及距离其他点的距离的最小值。点,注意最短链接来自B的位置和来自A的位置。继续。
我不知道用距离函数指定的密集图处理Kruskal算法的类似方法,对于大N,在用完时间O之前,你可以用完空间O(N ^ 2)。 (N ^ 2)。