【问题标题】:It is possible for a graph to have multiple minimum spanning trees一个图可以有多个最小生成树
【发布时间】:2021-04-12 01:52:14
【问题描述】:

令 G=(V, E) 是一个无向图,所有的边都有唯一的权重。是不是真的 那个 G 有一个唯一的 MST?或者G也可以有多个MST?

【问题讨论】:

  • 答案可能是no;多个 ST 是可能的(取决于图表),但是,如果每条边都有一个 unique weight,则只有一个 MST 是可能的。
  • @anurag 你能详细说明一下吗?更多不可能的原因?
  • @anurag:我认为权重唯一性还不够。
  • @YvesDaoust 我目前无法想到当边缘具有唯一权重时可以生成多个 MST 的情况! PrimKruskal算法只有在唯一性约束不存在的情况下才能生成不同的MST!
  • MST是独一无二的,问题已经在这里回答了:stackoverflow.com/questions/41192157/…

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


【解决方案1】:

根据 MST 的定义(来源:wikipedia)-

最小生成树 (MST) 或最小权重生成树是连接的边加权无向图的边的子集,它将所有顶点连接在一起,没有任何循环,并且具有最小可能的总边权重。

目标是覆盖所有个顶点,同时具有最低边权重总和。此外,生成树 (ST) 是一棵,因此没有循环 -

在上图中,橘子树是ST,但只有最上面的可以是MST(边权总和为7)。


编辑

反证法

是一个具有唯一边权重的无向图。让 成为图的两个不同最小生成树。

成为 中权重最低的边,但不是。同样,让 成为 中的边缘,但不是

现在,由于边权重是唯一的,不失一般性,让

另外,如果我们在 中添加,将与 形成一个循环。要删除循环,让我们从 中删除边缘。因此,我们有一个生成树

这个ST,,现在总重量小于;但是,这是一个矛盾,因为 已经是 MST。

因此,我们假设 有两个 MST 开头是错误的。证明到此结束。

【讨论】:

  • 您仅展示了一个示例,但问题是关于 所有 具有唯一权重的无向加权图。
  • @MoB。为了证明任何概念是错误的,我们只需要一个反例。我明白,我的回答并没有这样做,但是,这只是一个例子。 MST 的标准算法是 Prim 和 Kruskal;并且它们没有唯一的边权重约束。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-12
  • 1970-01-01
  • 1970-01-01
  • 2017-04-18
  • 2015-06-03
  • 1970-01-01
相关资源
最近更新 更多