Knight
KNIGHT
C++博客
首頁
新隨筆
聯(lián)系
聚合
管理
posts - 74, comments - 33, trackbacks - 0
最小樹形圖
對于最小樹形圖前幾天做了n個(gè)不定根的最小樹形圖,因?yàn)閚<16對此我用的是dp方法WS過去了那道題目,0.3s相對于最小樹形圖的正確解法的0.001實(shí)在是慚愧,為此也找到了一種最小樹形圖的DP解法當(dāng)然n<16時(shí)間和空間上才能受得了。
再談朱劉算法解決最小樹形圖問題:下面是轉(zhuǎn)載的資料:
有固定根的最小樹形圖求法O(VE):
首先消除自環(huán),顯然自環(huán)不在最小樹形圖中。然后判定是否存在最小樹形圖,以根為起點(diǎn)DFS一遍即可。
之后進(jìn)行以下步驟。
設(shè)cost為最小樹形圖總權(quán)值。
0
.置cost
=
0
。
1
.求最短弧集合Ao?(一條弧就是一條有向邊)
除源點(diǎn)外,為所有其他節(jié)點(diǎn)Vi,找到一條以Vi為終點(diǎn)的邊,把它加入到集合Ao中。
(加邊的方法:所有點(diǎn)到Vi的邊中權(quán)值最小的邊即為該加入的邊,記prev[vi]為該邊的起點(diǎn),mincost[vi]為該邊的權(quán)值)
2
.檢查Ao中的邊是否會(huì)形成有向圈,有則到步驟3,無則到步驟4。
(判斷方法:利用prev數(shù)組,枚舉為檢查過的點(diǎn)作為搜索的起點(diǎn),做類似DFS的操作)
3
.將有向環(huán)縮成一個(gè)點(diǎn)。
假設(shè)環(huán)中的點(diǎn)有(Vk1,Vk2,…?,Vki)總共i個(gè),用縮成的點(diǎn)叫Vk替代,則在壓縮后的圖中,其他所有不在環(huán)中點(diǎn)v到Vk的距離定義如下:
gh[v][Vk]
=
min?
{?gh[v][Vkj]
-
mincost[Vkj]?}
?(
1
<=
j
<=
i)而Vk到v的距離為
gh[Vk][v]
=
min?
{?gh[Vkj][v]?}
??????????????(
1
<=
j
<=
i)
同時(shí)注意更新prev[v]的值,即if(prev[v]
==
Vkj)?prev[v]
=
Vk
另外cost
=
cost
+
mincost[Vkj]?(
1
<=
j
<=
i)
到步驟1.
4
.cost加上Ao的權(quán)值和即為最小樹形圖總權(quán)值。
如要輸出最小樹形圖較煩,沒實(shí)現(xiàn)過。
找環(huán)O(V),收縮O(E),總復(fù)雜度O(VE)。
那幅對我有莫大幫助的流程圖如下,
對于不固定根的最小樹形圖,wy教主有一巧妙方法。摘錄如下:
新加一個(gè)點(diǎn),和每個(gè)點(diǎn)連權(quán)相同的邊,這個(gè)權(quán)大于原圖所有邊權(quán)的和,這樣這個(gè)圖固定跟的最小樹形圖和原圖不固定跟的最小樹形圖就是對應(yīng)的了。
這分資料上在理論上證明并不完整導(dǎo)致看上去也許多不解之處.......而具體證明建議是自己按照資料上說的出幾個(gè)帶環(huán)的圖然后按照上面說一布一步執(zhí)行慢慢的就會(huì)理解證明,
對于實(shí)現(xiàn)代碼建議自己先寫一份然后搜一份模板比對一下。
posted on 2009-04-30 17:16
KNIGHT
閱讀(1314)
評論(0)
編輯
收藏
引用
只有注冊用戶
登錄
后才能發(fā)表評論。
【推薦】100%開源!大型工業(yè)跨平臺軟件C++源碼提供,建模,組態(tài)!
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Copyright ©2025 KNIGHT Powered By:
博客園
模板提供:
滬江博客
<
2009年3月
>
日
一
二
三
四
五
六
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用鏈接
我的隨筆
我的評論
我參與的隨筆
留言簿
(8)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2009年6月 (4)
2009年5月 (14)
2009年4月 (12)
2009年3月 (10)
2009年2月 (12)
2009年1月 (10)
2008年12月 (12)
文章檔案
2009年3月 (1)
Friends
OJ
HEU
PKU
ZJU
搜索
最新評論
1.?re: (轉(zhuǎn)載)TopCoder入門手冊
好,學(xué)習(xí)了
--wuyiqi
2.?re: Knights
評論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--Lightning
3.?re: Knights
請問您說的奇偶性不同的x,y是指什么?
--Lightning
4.?re: [ZZ]后綴數(shù)組[未登錄]
@愛上對方
請你仔細(xì)閱讀標(biāo)題
【ZZ】轉(zhuǎn)載。。懂
--Knight
5.?re: [ZZ]后綴數(shù)組
請你不要抄
--愛上對方
閱讀排行榜
1.?(轉(zhuǎn)載)TopCoder入門手冊(6476)
2.?淺談2—SAT問題(6220)
3.?分而治之算法---距離最近的點(diǎn)對 (2773)
4.?poj 3648 Wedding(1444)
5.?最小樹形圖(1314)
評論排行榜
1.?Making the Grade(3)
2.?poj 3648 Wedding(3)
3.?[ZZ]后綴數(shù)組(2)
4.?Knights(2)
5.?感(2)
久久精品国产亚洲av麻豆小说
|
国产成人99久久亚洲综合精品
|
国产精品欧美久久久久天天影视
|
欧美日韩久久中文字幕
|
久久综合九色综合久99
|
久久一本综合
|
狠狠色丁香婷婷久久综合五月
|
色婷婷噜噜久久国产精品12p
|
狠狠精品久久久无码中文字幕
|
国产精自产拍久久久久久蜜
|
国产成人精品久久一区二区三区av
|
青草影院天堂男人久久
|
成人精品一区二区久久久
|
久久精品国产亚洲AV不卡
|
青青热久久国产久精品
|
激情伊人五月天久久综合
|
亚洲va久久久噜噜噜久久天堂
|
一本色道久久综合狠狠躁
|
亚洲狠狠婷婷综合久久久久
|
国产精品无码久久久久久
|
99久久精品费精品国产一区二区
|
国内精品久久久久久久亚洲
|
久久久久亚洲精品男人的天堂
|
亚洲国产成人乱码精品女人久久久不卡
|
久久精品女人天堂AV麻
|
亚洲国产成人精品91久久久
|
久久99精品国产99久久
|
精品久久久久久久中文字幕
|
免费一级做a爰片久久毛片潮
|
偷窥少妇久久久久久久久
|
国产精品久久久久久久久
|
久久久久亚洲AV无码专区桃色
|
国产69精品久久久久观看软件
|
99re久久精品国产首页2020
|
久久中文精品无码中文字幕
|
久久国产精品无码HDAV
|
亚洲äv永久无码精品天堂久久
|
国产99久久久国产精品小说
|
久久精品国产亚洲精品2020
|
亚洲国产香蕉人人爽成AV片久久
|
久久久久亚洲AV无码专区体验
|