數據結構-圖 All In One
在計算機科學中,
圖
(Graph
)是一種抽象數據類型,用於實現數學中圖論的無向圖
和有向圖
的概念。
圖的數據結構包含一個有限(可能是可變的)的集合作爲節點
集合,以及一個無序對
(對應無向圖)或有序對
(對應有向圖)的集合作爲邊
(有向圖中也稱作弧)的集合。
節點可以是圖結構的一部分,也可以是用整數下標或引用表示的外部實體。
圖的數據結構還可能包含和每條邊相關聯的數值(edge value),例如一個標號或一個數值(即權重
,weight;表示花費、容量、長度等)。
圖的常見數據結構
鄰接表
:
節點存儲爲記錄或對象,且爲每個節點
創建一個列表
。
這些列表可以按節點存儲其餘的信息;例如,若每條邊也是一個對象,則將邊存儲到邊起點的列表上,並將邊的終點存儲在邊這個的對象本身。
鄰接矩陣
:
一個二維矩陣,其中行與列分別表示邊的起點
和終點
。
頂點上的值存儲在外部。矩陣中可以存儲邊的值。
關聯矩陣
:
一個二維矩陣
,行
表示頂點
,列
表示邊
。
矩陣中的數值用於標識頂點和邊的關係(是起點、是終點、不在這條邊上等)。
非線性數據結構
圖解算法數據結構 All In One
https://www.cnblogs.com/xgqfrms/p/16366896.html
refs
https://zh.wikipedia.org/wiki/圖_(數據結構)
©xgqfrms 2012-2020
www.cnblogs.com/xgqfrms 發佈文章使用:只允許註冊用戶纔可以訪問!
原創文章,版權所有©️xgqfrms, 禁止轉載 🈲️,侵權必究⚠️!