添加边不仅仅是1条边后更新最小生成树MST的权重

问题描述

给定一个加权的无向图 G = (V,0) 和 E 边连接 G 的 2 个顶点。 将第 i 个 egde 添加到图 G,分别称为 G_i(G_(i+1) 是 G_i 添加的第 (i+1) 条边)。检查 G_i 是否有 MST。如果是,求 G_i 的 MST 权重。

我尝试的是使用 disjoint-Set 检查是否存在 MST,并找到 G_i 的 MST。

或者,将第 i 条边添加到 G_(i-1),然后找到循环如果存在,删除该循环上的最大加权边,并更新新的 MST。

但是这些算法运行的太慢了。

有没有更有效的算法来解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)