#define max_vertex_num 20 //最大頂點數
typedef int adjmatrix[max_vertex_num][max_vertex_num];//鄰接矩陣型別
typedef char vertextype;
typedef struct mgraph;
struct dnodeclosedge[max_vertex_num];
int locatevex(mgraph g,char u);
void minispantree_prim(mgraph g,vertextype u);
void createmgraph(mgraph &g);
int mininum(struct dnode closedge,int vexnum);
void main()
void minispantree_prim(mgraph g,vertextype u)
}if(-1 == pos)
return pos;
}void createmgraph(mgraph &g)
return;
}int locatevex(mgraph g,char u)
//測試結果:
/*text
input vexnum & arcnum:6,10
input vertices:abcdef
input arcs(v1->v2 &w):
a,b,6
input arcs(v1->v2 &w):
a,c,1
input arcs(v1->v2 &w):
a,d,5
input arcs(v1->v2 &w):
b,c,5
input arcs(v1->v2 &w):
b,e,3
input arcs(v1->v2 &w):
c,e,6
input arcs(v1->v2 &w):
c,f,4
input arcs(v1->v2 &w):
c,d,5
input arcs(v1->v2 &w):
d,f,2
input arcs(v1->v2 &w):
e,f,6
input you will start find first vertex:a
(a, c)
(c, f)
(f, d)
(c, b)
(b, e)
請按任意鍵繼續. . .
*/
最小生成樹 次小生成樹
一 最小生成樹 說到生成樹首先要解釋一下樹,樹是乙個聯通的無向無環圖,多棵樹的集合則被稱為森林。因此,樹具有許多性質 1.兩點之間的路徑是唯一的。2.邊數等於點數減一。3.連線任意兩點都會生成乙個環。對於乙個無向聯通圖g的子圖,如果它包含g的所有點,則它被稱為g的生成樹,而各邊權和最小的生成樹則被稱...
最小生成樹
package 圖 最小生成樹是用最少的邊吧把所有的節點連線起來。於是和圖的深度優先搜素差不多。class stack public void push int key public int pop 檢視棧頂的元素 public int peek public boolean isempty cla...
最小生成樹
在乙個具有幾個頂點的連通圖g中,如果存在子圖g 包含g中所有頂點和一部分邊,且不形成迴路,則稱g 為圖g的生成樹,代價最小生成樹則稱為最小生成樹。最小生成樹的特點 1 mst性質 最小生成樹性質 設g v,e 是乙個連通網路,u是頂點集v的乙個真子集。若 u,v 是g中一條 乙個端點在u中 例如 u...