表示多對多的關係算法
圖包含一組頂點和一組邊(不考慮重邊和自迴路)網絡
鄰接矩陣優勢:3d
鄰接矩陣缺點:blog
連通:若是從v到w存在一條(無向)路徑,則稱v和w是連通的排序
路徑:v到w的路徑是一系列的頂點的集合,其中任一對相鄰的頂點間都有圖中的邊。路徑的長度是路徑中的邊數(若是帶權,則是全部邊的權重和)。若是v和w之間的全部頂點都不一樣,則稱簡單路徑(無迴路)it
迴路:起點等於終點的路徑bfc
連通圖:圖中任意兩頂點均連通搜索
連通份量:無向圖中的極大連通子圖遍歷
強連通;有向圖中頂點v和w之間存在雙向路徑(既有從v->w又有從w->v,能夠不是同一條),則稱v和w是強連通方法
弱連通:去掉方向後的v和w是連通的
強連通圖:有向圖中任意兩頂點均強連通
強連通份量:有向圖的極大強連通子圖
六度空間算法
中序遍歷和前序遍歷直接求後序遍歷
徹底二叉搜索樹的核心代碼
最短路徑
網絡:帶權的圖,
實現上述代碼中紅線僞代碼的方法
定義:
稠密圖的貪心算法:Prim算法,從一個點一點一點向外擴張延伸,進入樹內的點的dist都爲0,往外延伸時是與樹中任意一個結點距離最小
稀疏圖的貪心算法:每次從剩餘全部邊中取最短的邊,所選邊不能構成迴路
1. AOV(Activity On Vertex) 網絡
算法部分: