MST性质

来源:互联网 发布:淘宝灯具3c认证编号 编辑:程序博客网 时间:2024/04/29 07:05

MST性质的证明  

2010-11-03 22:34:14|  分类: 算法分析 |  标签:mst  最小生成树  性质  顶点  橙色  |举报|字号 订阅

什么是MST?MST就是Most Small Tree,应该就是最小生成树的意思吧,具体不是很清楚,MST性质就是最小生成树性质(以下简称MST性质),我们在看最小生成树的算法的时候,很多情况下都有关于这条性质的说明,比如,历史上最经典的Prim算法和Kruskal算法就是根据这个性质演算出来的Algorithm,MST性质的声明如下:

最小生成树性质:设G=(V,E)是一个连通网络,U是顶点集V的一个真子集。若(u,v)是G中一条“一个端点在U中(例如:u∈U),另一个端点不在U中的边(例如:v∈V-U),且(u,v)具有最小权值,则一定存在G的一棵最小生成树包括此边(u,v)。


关于这个性质的证明过程,网上的资料不多,即使有,也不是很全面或者证明过程不够细节,我也是花了很长时间才弄清楚的,其实很简单,下面大家看看我是怎么证明的:

为了方便下面的证明过程,预先做一些约定:
①将集合U中的顶点看作是红色顶点
②而V-U中的顶点看作是蓝色顶点
③连接红点蓝点的边看作是橙色
④权最小的橙色边称为轻边(即权重最"轻"的边)

因此,MST性质中所述的边(u,v)就可简称为轻边。如下图:
MST性质的证明 - 流浪者 -

 用反证法来证明MST性质的正确性,假设G中任何一棵最小生成树都不含轻边(u,v)。则若T是G的一棵最小生成树,则它不含此轻边。

 由于T是包含了G中所有顶点的连通图,所以T中必有一条从红点u到蓝点v的路径P,而且路径P中必定包含一条橙色边(u',v')连接红点集和蓝点集,否则u和v不可能连通。我们假设 u-a-u'-v'-v 就是这样的一条路径,看下面的图:

MST性质的证明 - 流浪者 -

  
当把轻边(u,v)加入树T时,该轻边和P明显构成了一个回路。删去紫边(u',v')后回路亦消除,由此可得另一生成树T'。 如下:

MST性质的证明 - 流浪者 -

很显然,T'和T的差别仅仅在于T'用轻边(u,v)取代了T中权重可能更大的橙色边(u',v')。因为(u',v')的权重不可能比(u,v)小,由反证法的原理可知我们的前提条件里已经说明,所有橙色边里最小的一条边称为轻边,因为(u,v)是已经假定了的轻边,因此,必定有如下关系式:
w(u,v)≤w(u',v')
所以,w(T')=w(T)+w(u,v)-w(u',v')   ≤  w(T)
故此T'也是G的一颗最小生成树,但是它包含(u,v),这与假设是矛盾的,所以,MST性质成立!
0 0
原创粉丝点击