生成樹頂點集合,初始只含起點 v0。
visit[i]=1:i點已在生成樹中
lowcost[i]:生成樹中的點 到頂點 i 的最短距離。
演算法過程:
1.初始化生成樹,一開始只將起點 v0 加入到 樹中。
2.初始化 lowcost 陣列,初值為 v0 到各頂點的距離,無邊則為 inf。
重複以下步驟,直到所有頂點都在 s 中為止:
1.將 lowcost 值最小的頂點 k 加入到 s 中。
2.更新與頂點 k 相鄰頂點的 lowcost 值。
(如果與k相鄰的頂點沒有在生成樹中,即對應頂點的visit陣列中的資料為0,
並且與k相鄰的頂點的權值小於lowcost陣列中到該頂點的距離,則lowcost中到該頂點的值更新為那條邊的權值。
)
public class prime_algorithm ;
static private int lowcost= ;//存放 s 到頂點 i 的最短距離
static private intside= ,,,
,,
};static void prime()
} system.out.println("sum="+sum);
}public static void main(string args)
}
最小生成樹 Prime演算法
對於乙個圖,它的所有生成樹中必有乙個 邊的權值最小 的生成樹,我們把它稱為最小生成樹。概念很抽象,換做實際問題 有十個城市,各個城市之間距離或遠或近。需要建設乙個道路網,把十個城市連線在一起,要求道路網的道路長度最小。各個城市的連線可以抽象為乙個圖,本質上即是求該圖的乙個最小生成樹。每乙個圖可能有多...
最小生成樹 prime演算法
問題 c 建立通訊 時間限制 1 sec 記憶體限制 128 mb 提交 7 解決 4 提交 狀態 討論版 題目描述 據不完全統計,受 影響,四川大部分災區通訊陷入癱瘓,數千個基站因斷電 傳輸中斷等原因退出服務,目前總公司已緊急部署對受災地區進行通訊搶修。按照應急通訊保障預案,必須盡快 付出代價最小...
prime演算法 最小生成樹
若有差錯,望請指正!最小生成樹prime演算法,時間複雜度o v 2 時間複雜度只與頂點個數有關,與邊無關 gedge define max 1000 可以更大 void mintree prime graph g int min arc 從min weight中挑選出的最小的邊,即已計算的頂點群與...