1. 程式人生 > >資料結構——關於圖的儲存中十字連結串列和鄰接多重表的理解和思考

資料結構——關於圖的儲存中十字連結串列和鄰接多重表的理解和思考

有向圖的十字連結串列

 

對於有向圖來說,鄰接表是有缺陷的,關心了出度問題,想了解入度就必須要遍歷整個圖才能知道,反之,逆鄰接表解決了入度的情況。

把鄰接表與逆鄰接表結合起來,即有向圖的一種儲存方法十字連結串列(Orthogonal   List)。

我們重新定義頂點表結構

firstin表示入邊表頭指標,指向該頂點的入邊表中第一個結點;

firstout表示出邊表頭指標,指向該頂點的出邊表中第一個結點;

重新定義了邊表結點結構

其中

tailvex是指弧起點在頂點的下標,

headvex是指弧終點在頂點表中的下標,

headlink是指入邊表指標域,指向終點相同的一下條邊

taillink是指出邊表指標域,指向起點相同的下一條邊。

如果是網,還可以再增加一個weight域來儲存權值。