1. 程式人生 > >怎麽證明權重不相同的加權無向圖的最小生成樹是唯一的 (圖論)

怎麽證明權重不相同的加權無向圖的最小生成樹是唯一的 (圖論)

少包 size tail ati color post 中一 pos 否則

轉自:https://blog.csdn.net/liangzhaoyang1/article/details/51602926


設G是所有邊權均不相同的無向聯通圖。

證明一:

首先,易證圖G中權值最小的邊一定是最小生成樹中的邊。(否則最小生成樹加上權值最小的邊後構成一個環,去掉環中任意一條非此邊則形成了另一個權值更小的生成樹)。

之後用反證法,假設G存在倆個不同的最小生成樹

①.設G的倆個不同的最小生成樹T1 T2,設這倆顆生成樹的並集為子圖G1,G1為連通圖且T1 T2顯然為G1的最小生成樹,由首先可得知倆顆生成樹至少包含一條公共邊,將G1中兩顆生成樹的公共邊刪去,得到子圖G2。G2由一個或多個連通分量組成,其中至少有一個連通分量的最小生成樹不唯一(否則若所有連通分量的最小生成樹唯一,則將刪掉的公共邊加上,則T1等於T2,這與假設相矛盾)。

②.對其中一個最小生成樹不唯一的連通分量設為H,若H中點數>2,重復①的操作。否則H中只有倆個點,由於所有邊權值不同,顯然最小生成樹唯一,這與①中的最後一句相矛盾。

綜上,所有邊權均不相同的無向圖最小生成樹是唯一的。

證明二:

設T,T’為G的倆個最小生成樹,設T的邊集E(T)={e1,e2,...,em},T‘的邊集E(T‘)={e‘1,e‘2,...,e‘m}。

設ek滿足ek≠e‘k且k最小,由於所有邊權值不同,不妨假設weight(ek)<weight(ek‘),則將ek加入到T‘,T‘中構成環,易知環中不包含e‘1,e‘2,...,e‘k-1(否則在T中有包含ek的環),將環中任意非ek邊刪掉後得到了權值更小的生成樹,這與T‘為最小生成樹相矛盾,故G最小生成樹唯一。


還有一個更強的結論:同一個圖不同最小生成樹的邊權重序列相同。

怎麽證明權重不相同的加權無向圖的最小生成樹是唯一的 (圖論)