【问题标题】:Given an edge, find a minimum spanning tree if exist给定一条边,找到最小生成树(如果存在)
【发布时间】:2023-04-09 07:20:02
【问题描述】:

我有一个加权无向图 G 和一条边 e。当且仅当它存在时,我需要找到包含 e 的最小生成树。

【问题讨论】:

    标签: graph graph-theory theory minimum-spanning-tree kruskals-algorithm


    【解决方案1】:

    我可以用两种不同的方式解释您的问题:

    1. 找到所有最小生成树。如果有任何包含 e,则返回它。否则返回 null。
    2. 使用 Kruskals 算法,在执行任何其他操作之前将 e 添加到生成树。构建剩余的树。如果您能够创建最小跨度,请返回它。

    有两个潜在的故障点:

    A.该图包含未通过边连接的组件(不存在生成树)
    B.最小生成树不包含e

    方法 (1) 在条件 A 和 B 上失败。方法 (2) 仅在条件 A 下失败。

    【讨论】:

    • 对于 (1),您假设只有一个 MST,但并非总是如此。这样,我无法确定答案是否正确。关于(2),如何检查mst返回者是否是真正的mst?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    相关资源
    最近更新 更多