【问题标题】:krukshal's algorithm or Prims Algorithm which one is better in finding minimum spanning tree? [duplicate]kruskal 算法和 Prim 算法哪一个更适合寻找最小生成树? [复制]
【发布时间】:2010-11-22 03:46:36
【问题描述】:

可能重复:
Kruskal vs Prim

krukshal 算法和 Prims 算法哪一个更适合寻找最小生成树?

【问题讨论】:

  • @Adnan:你怎么知道这是作业?
  • 几年前我的算法分析课问题听起来很熟悉
  • 简单的答案:它们都仍然广泛/常用,因为根据图形的性质,特别是节点数与边数,两者都可以更好。
  • 我取下了标签,因为它冒犯了你这么多,显然这不是家庭作业。这并不意味着冒犯或指责,只是试图让这个 Q 在作业标签下可见。

标签: algorithm analysis kruskals-algorithm prims-algorithm


【解决方案1】:

我将添加一点来支持我没有提到的 Prim 算法。如果给定 N 个点和 x 和 y 之间距离的距离函数 d(x,y),则使用空间 O(N)(但时间 N^2)很容易实现 Prim 算法。

从任意点 A 开始并创建一个大小为 N-1 的数组,为您提供从 A 到所有其他点的距离。选择与最短距离相关联的点 B,在生成树中链接 A 和 B,然后将数组中的距离更新为已记录到该另一点的距离和从 B 到另一点的距离的最小值点,记下最短链接从 B 到哪里,从 A 到哪里。继续。

对于由距离函数指定的密集图,我不知道类似的处理 Kruskal 算法的方法,对于大 N,您可能会用完空间 O(N^2),然后再耐心等待 O (N^2)。

【讨论】:

    猜你喜欢
    • 2014-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    相关资源
    最近更新 更多