計(jì)算機(jī)算法設(shè)計(jì)與分析(第6版)-課件 ch0405最小生成樹(shù)算法_第1頁(yè)
計(jì)算機(jī)算法設(shè)計(jì)與分析(第6版)-課件 ch0405最小生成樹(shù)算法_第2頁(yè)
計(jì)算機(jī)算法設(shè)計(jì)與分析(第6版)-課件 ch0405最小生成樹(shù)算法_第3頁(yè)
計(jì)算機(jī)算法設(shè)計(jì)與分析(第6版)-課件 ch0405最小生成樹(shù)算法_第4頁(yè)
計(jì)算機(jī)算法設(shè)計(jì)與分析(第6版)-課件 ch0405最小生成樹(shù)算法_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

最小生成樹(shù)算法LET'SEMBARKONTODAY'SSHARINGJOURNEYTOGETHER01問(wèn)題背景與定義Let'sembarkontoday'sjourneyofsharingandcommunicationtogether帶權(quán)連通圖與生成樹(shù)概念無(wú)向連通帶權(quán)圖定義無(wú)向連通帶權(quán)圖G由頂點(diǎn)集V和邊集E組成,每條邊(v,w)都有一個(gè)權(quán)值c[v][w],表示連接兩個(gè)頂點(diǎn)的代價(jià)。這種圖可以用來(lái)模擬城市之間的通信線路,權(quán)值代表建設(shè)成本。生成樹(shù)與耗費(fèi)生成樹(shù)是包含圖中所有頂點(diǎn)的無(wú)環(huán)連通子圖。生成樹(shù)的耗費(fèi)是指其所有邊權(quán)值之和。最小生成樹(shù)就是所有生成樹(shù)中耗費(fèi)最小的那一棵,它在通信網(wǎng)絡(luò)設(shè)計(jì)中具有重要的經(jīng)濟(jì)意義。最小生成樹(shù)的應(yīng)用價(jià)值在通信網(wǎng)絡(luò)設(shè)計(jì)中,城市可以作為圖的頂點(diǎn),城市之間的通信線路費(fèi)用作為邊的權(quán)值。最小生成樹(shù)給出了最經(jīng)濟(jì)的通信線路建設(shè)方案,能夠有效節(jié)約成本。通信網(wǎng)絡(luò)設(shè)計(jì)通過(guò)最小生成樹(shù)算法,可以找到連接所有城市且總成本最低的通信線路組合,避免不必要的重復(fù)建設(shè)和資源浪費(fèi),實(shí)現(xiàn)成本的最優(yōu)化。成本節(jié)約算法動(dòng)機(jī)最小生成樹(shù)的應(yīng)用價(jià)值直接體現(xiàn)了算法的學(xué)習(xí)動(dòng)機(jī)。它將復(fù)雜的網(wǎng)絡(luò)優(yōu)化問(wèn)題轉(zhuǎn)化為一個(gè)可以通過(guò)貪心策略解決的數(shù)學(xué)問(wèn)題,為后續(xù)算法的學(xué)習(xí)提供了明確的目標(biāo)和動(dòng)力。02MST性質(zhì)與貪心策略Let'sembarkontoday'sjourneyofsharingandcommunicationtogetherMST性質(zhì)對(duì)于連通帶權(quán)圖G,任意真子集U,跨越U和V-U的最小權(quán)邊必被某棵最小生成樹(shù)包含。這一性質(zhì)為Prim和Kruskal算法的貪心選擇提供了理論依據(jù),保證了局部最優(yōu)選擇能夠構(gòu)成全局最優(yōu)解。MST性質(zhì)的表述與含義MST性質(zhì)的交換論證假設(shè)最小生成樹(shù)T不包含最小權(quán)邊(u,v),將其加入T會(huì)產(chǎn)生環(huán),環(huán)上存在另一條跨割邊(u',v')可替換,且替換后總權(quán)不增,從而得到包含(u,v)的更小或相等耗費(fèi)樹(shù),與假設(shè)矛盾。假設(shè)與矛盾01加入最小權(quán)邊(u,v)后,由于圖的連通性,必然會(huì)在T中形成一個(gè)環(huán)。這個(gè)環(huán)包含了(u,v)以及T中的一些邊,這些邊連接了集合U和V-U中的頂點(diǎn)。環(huán)的形成02在形成的環(huán)中,除了(u,v)之外,還存在一條邊(u',v'),使得u'屬于U,v'屬于V-U。由于(u,v)是最小權(quán)邊,替換(u',v')為(u,v)不會(huì)增加總權(quán)。替換邊的選擇03通過(guò)這種替換操作,我們得到了一棵新的生成樹(shù)T',它的總權(quán)小于等于T的總權(quán),且包含邊(u,v)。這證明了MST性質(zhì)的正確性,為貪心算法的正確性提供了理論支持。正確性保證0403Prim算法原理Let'sembarkontoday'sjourneyofsharingandcommunicationtogetherPrim算法從一個(gè)起始頂點(diǎn)開(kāi)始,將其加入集合S。這個(gè)起始點(diǎn)可以任意選擇,通常選擇編號(hào)為1的頂點(diǎn)。起始點(diǎn)選擇在每一步中,從S與V-S之間選擇權(quán)值最小的邊,將該邊的另一個(gè)頂點(diǎn)加入S。這個(gè)過(guò)程不斷重復(fù),直到S包含所有頂點(diǎn)。邊的選擇Prim算法的每一步都依賴于MST性質(zhì),通過(guò)局部最優(yōu)選擇逐步構(gòu)建全局最優(yōu)解。這種貪心策略保證了算法的正確性。貪心策略數(shù)組實(shí)現(xiàn)與復(fù)雜度數(shù)組實(shí)現(xiàn)時(shí)間復(fù)雜度使用closest數(shù)組記錄V-S中每個(gè)頂點(diǎn)在S中的最近鄰,lowcost數(shù)組保存對(duì)應(yīng)的邊權(quán)。通過(guò)這兩個(gè)數(shù)組,可以高效地找到最小權(quán)邊。Prim算法的時(shí)間復(fù)雜度為O(n2),適用于稠密圖。在每一步中,需要遍歷所有頂點(diǎn)來(lái)找到最小權(quán)邊,因此復(fù)雜度與頂點(diǎn)數(shù)的平方成正比。04Kruskal算法原理Let'sembarkontoday'sjourneyofsharingandcommunicationtogether邊優(yōu)先策略Kruskal算法從邊的角度出發(fā),將所有邊按權(quán)值升序排列,依次檢查每條邊。如果邊的兩個(gè)端點(diǎn)屬于不同的連通分支,則將它們合并。Kruskal算法流程并查集支持與復(fù)雜度并查集用于高效管理連通分支。通過(guò)Find操作可以快速判斷兩個(gè)頂點(diǎn)是否屬于同一個(gè)集合,Union操作可以合并兩個(gè)集合。并查集的作用01Kruskal算法的時(shí)間復(fù)雜度為O(eloge),其中e是邊的數(shù)量。這個(gè)復(fù)雜度主要由邊的排序和并查集操作決定。時(shí)間復(fù)雜度03當(dāng)圖的邊數(shù)較少時(shí),Kruskal算法的性能優(yōu)于Prim算法。它適用于稀疏圖,能夠快速找到最小生成樹(shù)。適用場(chǎng)景04使用堆結(jié)構(gòu)可以高效地獲取按權(quán)值排序的邊。在每次迭代中,從堆中取出權(quán)值最小的邊進(jìn)行處理。堆結(jié)構(gòu)0205算法對(duì)比與小結(jié)Let'sembarkontoday'sjourneyofsharingandcommunicationtogetherPrim與Kruskal核心差異Kruskal算法特點(diǎn)Kruskal算法從邊的角度出發(fā),按權(quán)值排序后依次檢查邊。它使用并查集管理連通分支,適合稀疏圖。Prim算法從一個(gè)頂點(diǎn)開(kāi)始,逐步擴(kuò)展生成樹(shù)。它維護(hù)一個(gè)頂點(diǎn)集合S,每次從S與V-S之間選擇最小權(quán)邊,適合稠密圖。Prim算法特點(diǎn)最小生成樹(shù)學(xué)習(xí)小結(jié)學(xué)習(xí)了最小生成

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論