數據結構-基于C++語言(微課版) 課件 6-十字鏈表_第1頁
數據結構-基于C++語言(微課版) 課件 6-十字鏈表_第2頁
數據結構-基于C++語言(微課版) 課件 6-十字鏈表_第3頁
數據結構-基于C++語言(微課版) 課件 6-十字鏈表_第4頁
數據結構-基于C++語言(微課版) 課件 6-十字鏈表_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

本節(jié)內容:十字鏈表圖的存儲結構圖的存儲結構十字鏈表:十字鏈表是有向圖的另一種鏈式存儲結構。由于用鄰接表存儲有向圖時,既需要鄰接表,又需要逆鄰接表,把兩表合二為一,用十字鏈表表示。在十字鏈表中,圖中每一條弧用一個弧結點表示,它由六個域組成。圖中的每個頂點用一個頂點結點表示,它由三個域組成。圖的存儲結構十字鏈表:弧結點的結構tagweighttailvextailnextarcheadvexheadnextarc

邊結點:tag:標記域,標記該弧是否被處理過;weight:信息域,存儲弧的權值;tailvex、headvex:頂點域,分別表示弧尾頂點和弧頭頂點的序號;tailnextarc:鏈接指針,指向下一條以頂點tailvex為始點(弧尾)的弧;headnextarc:鏈接指針,指向下一條以頂點headvex為終點(弧頭)的??;圖的存儲結構十字鏈表:頂點結點的結構圖中的每一個頂點用一個頂點結點表示,所有頂點結點組成一個順序表,它由三個域組成:data:存儲有關頂點的信息;firstinarc:鏈接指針,指向第一條以該頂點為終點的?。籪irstoutarc:鏈接指針,指向第一條以該頂點為始點的弧。

data頂點結點:firstinarcfirstoutarc圖的存儲結構十字鏈表特點:在有向圖的十字鏈表中,從頂點結點中的firstoutarc域出發(fā),統(tǒng)計鏈表中弧結點的個數,可求得該頂點的出度,從頂點結點中的firstinarc域出發(fā),統(tǒng)計鏈表中弧結點的個數,可求得該頂點的入度。G1V2V0V10102^01212^^21^^弧結點V0V2V1頂點結點^鄰接矩陣、鄰接表、鄰接多重表、十字鏈表的比較:在邊稀疏(e<<n(n-1)/2)的情況下,用鄰接表、鄰接多重表表示圖比鄰接矩陣節(jié)省存儲空間;在鄰接表上容易找到任何一頂點的第一個鄰接點和下一個鄰接點,但要判定任意兩個頂點(vi和vj)之間是否有邊或弧相連,則需搜索第i個或第j個鏈表,因此,不及鄰接矩陣方便;鄰接表、鄰接矩陣:無向圖、有向圖;鄰接多重表:無向圖;十字

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論