圖的存儲表示方法很多
為了適合用C語言描述
圖的鄰接矩陣表示法
在圖的鄰接矩陣表示法中
① 用鄰接矩陣表示頂點間的相鄰關系
② 用一個順序表來存儲頂點信息
設G=(V
【例】下圖中無向圖G
若G是網絡
其中
w ij 表示邊上的權值;
∞表示一個計算機允許的
【例】下面帶權圖的兩種鄰接矩陣分別為A
#define MaxVertexNum l
typedef char VertexType; //頂點類型應由用戶定義
typedef int EdgeType; //邊上的權值類型應由用戶定義
typedef struct{
VextexType vexs[MaxVertexNum] //頂點表
EdeType edges[MaxVertexNum][MaxVertexNum];
//鄰接矩陣
int n
}MGragh;
注意
① 在簡單應用中
② 當鄰接矩陣中的元素僅表示相應的邊是否存在時
③ 無向圖的鄰接矩陣是對稱矩陣
④ 鄰接矩陣表示法的空間復雜度S(n)=
void CreateMGraph(MGraph *G)
{//建立無向網的鄰接矩陣表示
int i
scanf(
for(i=
G
for(i=
for(j=
G
for(k=
scanf(
G
G
}
}//CreateMGraph
該算法的執行時間是
From:http://tw.wingwit.com/Article/program/sjjg/201311/23848.html