圖:定義與存儲

圖的定義與基本術語

圖Graph的定義

圖是一種網狀數據結構,形式化定義如下:
在這裏插入圖片描述
集合DataObject中的所有元素具有相同的特性,V中數據元素常稱爲頂點(vertex),VR是兩個頂點之間關係的集合,P(x,y)表示x和y之間有特定的關聯屬性P。

若<x,y>∈R <x,y>,則 <x,y>表示從頂點x到頂點y的一條弧arc,並稱x爲弧尾(tail)或起始點,稱y爲弧頭(head)或終端點,此時圖中的邊是有方向的,稱這樣的圖爲有向圖。
若<x,y>∈VR ,且有<y,x>∈VR ,即VR是對稱關係,這時以無序對(x,y)來代替兩個有序對,表示x和y之間的一條邊(edge),稱這樣的圖爲無向圖。
在這裏插入圖片描述

ADT

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
一個頂點的多個鄰接點之間誰先誰後實際上是沒有規定的。但是,如果這個圖使用鄰接矩陣存儲,存儲上就有先後之分了,這裏的First和Next指的就是存儲上的關係。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
邊數等於1/2度數
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
完全圖一定是連通圖

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

圖的存儲結構

在這裏插入圖片描述
一個一維數組,一個二維數組
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
對於有向圖:
(1,2) (1,3) (1,4) … 是頂點1的出度。行和即出度。
(2,1) (3,1) (4,1) … 是頂點1的入度。列和即入度。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
注意:
1)
節點位置序號:0 1 2 3 4 …
節點內容:1 2 3 4 5 …
2)
表頭節點表順序存儲,後邊的頂點單鏈錶鏈式存儲
3)
頂點單鏈表的先後次序由讀入邊的次序決定,也由頂點單鏈表頭插還是尾插決定
4)
有向圖每條邊被存放一次,無向圖一條邊被存放兩次

如果是網怎麼表示?
需要再加上一個權值域 
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
黃色箭頭描述鄰接表,灰色箭頭描述逆鄰接表
在這裏插入圖片描述
鄰接多重錶針對無向圖
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章