最小生成樹

2021-07-23 23:05:47 字數 639 閱讀 6779

prim演算法簡單描述

1).輸入:乙個加權連通圖,其中頂點集合為v,邊集合為e;

2).初始化:vnew = ,其中x為集合v中的任一節點(起始點),enew = {},為空;

3).重複下列操作,直到vnew = v:

a.在集合e中選取權值最小的邊,其中u為集合vnew中的元素,而v不在vnew集合當中,並且v∈v(如果存在有多條滿足前述條件即具有相同權值的邊,則可任意選取其中之一);

b.將v加入集合vnew中,將邊加入集合enew中;

4).輸出:使用集合vnew和enew來描述所得到的最小生成樹

kraskal演算法簡單描述

1).記graph中有v個頂點,e個邊

2).新建圖graphnew,graphnew中擁有原圖中相同的e個頂點,但沒有邊

3).將原圖graph中所有e個邊按權值從小到大排序

4).迴圈:從權值最小的邊開始遍歷每條邊 直至圖graph中所有的節點都在同乙個連通分量中

if 這條邊連線的兩個節點於圖graphnew中不在同乙個連通分量中

新增這條邊到圖graphnew中

最小生成樹 次小生成樹

一 最小生成樹 說到生成樹首先要解釋一下樹,樹是乙個聯通的無向無環圖,多棵樹的集合則被稱為森林。因此,樹具有許多性質 1.兩點之間的路徑是唯一的。2.邊數等於點數減一。3.連線任意兩點都會生成乙個環。對於乙個無向聯通圖g的子圖,如果它包含g的所有點,則它被稱為g的生成樹,而各邊權和最小的生成樹則被稱...

最小生成樹

package 圖 最小生成樹是用最少的邊吧把所有的節點連線起來。於是和圖的深度優先搜素差不多。class stack public void push int key public int pop 檢視棧頂的元素 public int peek public boolean isempty cla...

最小生成樹

define max vertex num 20 最大頂點數 typedef int adjmatrix max vertex num max vertex num 鄰接矩陣型別 typedef char vertextype typedef struct mgraph struct dnodecl...