07數據結構——圖
阿新 • • 發佈:2019-04-21
數據 http 重復 code color 其中 頂點 圖的定義 類型
7.2 圖的定義
圖是由頂點的有窮非空集和頂點之間邊的集合,通常表示為:G(V. E),其中,G 表示一個圖,V 是圖 G 中頂點的集合,E 是圖 G 中邊的集合。
7.3圖的抽象數據類型
7.4 圖的存儲
7.4.1 鄰接矩陣
7.4.2 鄰接表
7.4.3 十字鏈表
7.5 圖的遍歷
從圖中某一頂點出發訪遍圖中其余頂點,且使每一個頂點僅被訪問一次,這一過程就叫做圖的遍歷。
7.6生成樹
7.6.1最小生成樹
普裏姆算法
第一步:隨機從所有頂點集合V中選取一個初始頂點,然後把這個頂點放入集合U中,集合W=V-U;
第二步:計算集合U中這個頂點到集合W中所有頂點距離最小的那個頂點,把這個頂點從集合W中移入到集合U中;
第三步:因為有集合U中剛剛有新的頂點加入,所以現在需要更新集合U中頂點到集合W中頂點的距離,計算剛剛加入的這個頂點到集合W中每個頂點的距離和
原先集合U中頂點到集合W中頂點的距離做比較,如果前者更小,則更新這個最小距離;
第四步:重復以上步驟。
舉個例子:
第一步:隨機選取一個頂點,放入集合U中,假設為頂點1,則U={1},W={2,3,4,5,6},計算頂點1到頂點2,3,4,5,6的距離,連接距離最小的邊13;
第二步:把距離最小的頂點3,從W集合中移入到U集合中;
第三步:計算頂點3與頂點2,4,5,6的距離,如果頂點3與頂點2的距離比頂點1與頂點2的距離小,則更新這個最小距離,否則不更新,同理就算頂點4,5,6,連接最小的邊36;
第四步:重復以上步驟一二三。
克魯斯卡爾算法
7.7最短路徑
07數據結構——圖