[英]Finding MST of directed graph using Prim's algorithm
誰能幫助我如何使用PRIM算法查找MST。 突出顯示MST的邊緣並寫下將節點添加到MST的順序。
引用有向最小生成樹問題 :
- 丟棄進入根部的弧(如果有); 對於除根以外的每個節點,選擇成本最小的進入弧; 令選定的n-1個弧為集合S。
- 如果未形成任何循環,則G(N,S)為MST。 否則,請繼續。
- 對於每個形成的循環,將循環中的節點收縮為偽節點(k),並根據以下內容修改從循環外的某個節點(i)進入循環中的節點(j)的每條弧線的成本方程。
c(i,k)= c(i,j)-(c(x(j),j)-min_ {j}(c(x(j),j))在這里c(x(j),j)是進入j的循環中弧的成本。- 對於每個偽節點,選擇修改成本最小的進入弧; 用新選擇的圓弧替換在S中輸入相同實節點的圓弧。
- 使用收縮圖轉到步驟2。
該算法的關鍵思想是找到替換弧,該替換弧具有最小的額外成本以消除周期(如果有)。 給定的方程式顯示了相關的額外成本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.