首页 > 试题广场 >

(Karp的最小平均权重环路算法) 设G=(V,E)为一一

[问答题]
(Karp的最小平均权重环路算法)  设G=(V,E)为一一个带权重的有向图,权重函数为w:ER,  设n= |V|。定义E中边的环路c=<e1,e2,...,ek> 的平均权重为
                                       
设μ*= min(c),这里c为图G中所有的有向环路。我们称环路权重μ(c)=μ*的环路c为最小平均权环路。本题要研究的是如何高效地计算出μ*。
          假定在不失一般性的情况下,每个结点v∈V都可以从源结点s到达。设(s, v)为从源结点s到结点v的最短路径权重,设k(s,v)为从源结点s到结点v的恰好包含k条边的最短路径权重。如果不存在恰好k条边的从s到v的路径,则k(s, v)=∞。
a.证明:如果μ°=0,则图G包含非负权重的环路,并且对于所有的结点v∈V,
                                           
b.证明:如果μ* =0,则对于所有的结点v∈V ,
                                               
(提示:使用(a)部分的两个属性。)
c.设c为一个权重为0的环路,并设u和v为c.上的任意两个结点。假定μ*=0并且环路上从结点u到结点v的简单路径的权重为x。证明: (s, v)=(s,u)+x。(提示:环路上从结点v到结点u的简单路径的权重为-x。)
d.证明:如果μ"=0,则在每个最小平均权重环路上都存在-一个结点v,满足
                                
(提示:说明如何将--条最短路径扩展到最小平均权重环路上的任意结点,以找出到环路上下一个结点的最短路径。)
e.证明:如果μ*=0,则在每个最小平均权重环路上都存在一个结点v,满足
                                        
f.证明:如果给图G的每条边的权重加一个常数t,则μ*也增加t。使用该事实来证明:
                                        
g.给出一个时间复杂度为O(VE)的算法来计算μ*。 


这道题你会答吗?花几分钟告诉大家答案吧!