繁体   English   中英

如果向无向加权图 G 添加新边,则查找 MST T 是否仍然是新图 G' 的 MST

[英]Find if MST T is still a MST for new graph G' if a new edge is added to undirected weighted graph G

这是一个审查问题,我试图了解我的答案是否正确。

这是原始问题的要点:

您有一个加权无向图的 MST,T,然后在节点(u 和 v)之间的原始图中引入一条新边以创建一个新图 G'。 给出一个线性时间算法来确定 T 是否是 G' 的 MST。

我的答案:

原始图的 MS T T 不包含任何循环。 从节点 u 到节点 v 应该只有一条路径。我们可以将新边添加到我们的 MST 中,这可以在 O(1) 时间内完成以生成我们的新树 T'。 然后,我们可以在 T' 上从 u 到 v 运行 DFS,在 O(|V| + |E|) 时间内完成。 添加新边后,我们应该在 u 和 v 之间获得最多 2 条路径。一条将使用新边,一条不使用。 我们可以在 O(1) 时间内比较这两条路径。 如果两者中较短的一个使用新边,那么我们知道原始 MST“T”不是新图 G' 的 MST。 我们的整个算法将在线性时间内完成。

这是一个正确的算法,并且您已经证明,如果它找到较轻的树,那么旧树就不是最小的。 你仍然需要证明,如果它没有找到更轻的树,那么老树仍然是最轻的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM