Algorithm 添加新节点后如何查找MST?

Algorithm 添加新节点后如何查找MST?,algorithm,graph,graph-theory,minimum-spanning-tree,Algorithm,Graph,Graph Theory,Minimum Spanning Tree,在添加新节点或更改路径距离后,我们如何找到MST(最小生成树) 我需要帮助来解决这个问题。有人能帮我吗 谢谢。添加新边时: 您将需要从修改/新边的一侧执行图形遍历,最简单的是DFS。如果您可以返回到以前要访问的节点,则有一个循环 在该循环中,需要删除最大的边。你会得到一棵树,它是最小生成树 如果要更改边权重,则需要: 通过临时删除新边,将图形断开为两个组件A和B 如果新边的权重比以前小,可以将其放回。否则: 遍历您以前处理过的边,并检查它们是否将A连接到B 从这些边中拾取最小的边,并使用该边连

在添加新节点或更改路径距离后,我们如何找到
MST(最小生成树)

我需要帮助来解决这个问题。有人能帮我吗


谢谢。

添加新边时:

您将需要从修改/新边的一侧执行图形遍历,最简单的是DFS。如果您可以返回到以前要访问的节点,则有一个循环

在该循环中,需要删除最大的边。你会得到一棵树,它是最小生成树

如果要更改边权重,则需要:

  • 通过临时删除新边,将图形断开为两个组件A和B
  • 如果新边的权重比以前小,可以将其放回。否则:
  • 遍历您以前处理过的边,并检查它们是否将A连接到B
  • 从这些边中拾取最小的边,并使用该边连接组件
同样,你会得到一个新的最小生成树


总的来说,这是O(V+E),乘以逆阿克曼的一小部分。

是什么确保这棵新树(添加新边时)仍然是最小生成树?是否有任何线性方法添加节点(可以添加多少条边)?