【问题标题】:Applications of Kruskal and Prim's algorithmsKruskal 和 Prim 算法的应用
【发布时间】:2011-09-06 13:12:40
【问题描述】:

谁能给出这两种算法的一些应用, 它们可以用于哪些地方和哪些应用程序?

【问题讨论】:

  • 在某处引用它们会很有用。

标签: algorithm prims-algorithm kruskals-algorithm


【解决方案1】:

首先对最小生成树进行了研究,以寻找以最小化布线总成本的方式布置电网的方法。在最小生成树中,所有节点(房屋)都将通过电线以最低成本和冗余的方式连接到电源(切断任何电线必然会将电网分成两部分)。

从那时起,这个问题就得到了充分的研究,并且经常被用作更复杂算法中的子程序。用于寻找旅行商问题的近似解的Christofides algorithm 在关键步骤中使用了它,一些用于寻找施泰纳树的算法也是如此。

最小生成树也被用于generate mazes。 Kruskal 和 Prim 的算法都以这种方式使用,通常会创建高质量的迷宫。

如果您对最小生成树问题、其应用和算法的完整历史感兴趣,有一篇真正出色的论文 available here 涵盖了所有这些内容。我强烈建议您阅读一下!

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    引用维基百科:

    一个例子是一家有线电视公司为一个新社区铺设电缆。如果限制仅沿某些路径埋设电缆,则将有一个图表表示哪些点由这些路径连接。其中一些路径可能更昂贵,因为它们更长,或者需要将电缆埋得更深;这些路径将由权重较大的边表示。该图的生成树将是那些没有环但仍连接到每个房屋的路径的子集。可能有几个生成树。最小生成树将是总成本最低的树。

    来源:http://en.wikipedia.org/wiki/Minimum_spanning_tree

    【讨论】:

      【解决方案3】:

      首先,您必须了解 Prim 和 Kruskal 的算法对于在图中查找 Minimum spanning Tree 很有用。我能想到的最小生成树的实际应用之一是以最少的成本连接同一公司的不同办公室。

      【讨论】:

        【解决方案4】:

        Prims 和 Kruskal 算法都用于找到最小生成树。 现在 Kruskal 和 Prims 算法的应用基本上都是 MST 的应用。那么MST有哪些应用呢?

        好吧,回答几个,这里有一些你会发现它们可用的领域:

        1. 如果您想使用高速公路或铁路网络连接多个城市,您可以使用这些算法来找到连接所有这些城市的道路/铁路的最短长度。
        2. 网络设计 - 假设您有一家拥有多个办事处的企业。您必须租用电话线来连接所有这些办公室。因此,您可以利用这些算法找出以最少的电话线连接所有办公室的最低成本。
        3. 可用于查找旅行商问题。这是使用 MST 时非常著名的问题。
        4. 您想要应用一组带有 - 电力、电话线、污水管道的房屋。
        5. 设计局域网。

        【讨论】:

          【解决方案5】:
          • 拓扑
          • 制图
          • 几何
          • 集群
          • 路由算法
          • 迷宫的世代
          • 机械/电气/计算机网络
          • 化学中的分子键研究

          【讨论】:

          • 我认为这并不能真正回答问题。 如何在这些领域中使用的算法?
          【解决方案6】:

          Kruskal 和 Prim 算法的应用经常出现在计算机网络中。例如,如果您有一个带有许多交换机的大型 LAN,那么找到最小生成树对于确保只有最少数量的数据包将通过网络传输至关重要。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2012-06-02
            • 1970-01-01
            • 1970-01-01
            • 2014-06-16
            • 2011-05-16
            • 2022-12-13
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多