【发布时间】:2015-01-02 10:06:11
【问题描述】:
如果图中不属于 MST 的边的权重减少,我正在尝试修改最小生成树。我在 stackoverflow 上读到,首先将边连接到 MST 现在MST中只有一个循环,并且通过循环属性可以从MST中删除循环中权重最大的边?如何找到该循环中的最大权重边缘?
【问题讨论】:
-
你只需要这样做一次吗?
-
我只需要减少一次边的权重..
-
您使用哪种算法来查找 MST。还有你使用了哪种数据结构。我需要知道这一点,因为如果您使用了 union-find 数据结构,那么我认为我有更好的解决方案
-
我还没有实现它,但我会使用 kruskal 和 union find 数据结构。
-
好的,一旦你将 MST 保存在联合查找数据结构中。假设连接节点 I 和 J 的边的权重减小。现在从节点开始,我向 MST 的根移动,并检查边的权重是否大于节点(I,J)的权重。如果是,那么你就完成了。否则对 Node J 做同样的事情。我认为这是一个很好的解决方案
标签: algorithm graph minimum-spanning-tree