今天看了鏈式前向星的用法和思想,明白了怎麼用它和它的基本原理
1:用陣列的形式記錄邊,用結構體陣列加乙個head陣列記錄,
head陣列先存-1(初始化),然後對於u的所有邊,第一條邊,用乙個結構體儲存權值和鄰節點,然後用乙個next存head【u】裡面的數,然後,把head【u】儲存為當前的結構體的陣列的數字,不斷迴圈,可以成為一條鍊子,儲存著u的所有邊的資訊,最後一條邊的陣列號存在head【u】裡,存該邊的結構體結點的next存著第二條邊的陣列節點;就這樣便可以實現邊的儲存,
取用的時候
for(i=head[u];i!=-1;i=edge[i].next) 便可以了
簡單理解鏈式前向星
前向星是一種特殊的邊集陣列,我們把邊集陣列中的每一條邊按照起點從小到大排序,如果起點相同就按照終點從小到大排序,並記錄下以某個點為起點的所有邊在陣列中的起始位置和儲存長度,那麼前向星就構造好了.初始位置u i 終止位置v i 權w i first i 初始值全為 1。first i 它是用來表示以i...
鏈式前向星理解
在初學資料結構時,如何存邊 或許是大部分oier關注的事情。我在最初學時,常常使用鄰接矩陣存圖,8000 8000已經是極限,這意味著我所能處理的圖,點的最大規模也只能在10000左右。這種存圖方式的最大弊端在於,它雖然查詢兩點之間是否有邊是o 1 的,但無論是從乙個點開始走它所連的邊的o n 的時...
前向星和鏈式前向星
我們首先來看一下什麼是前向星.前向星是一種特殊的邊集陣列,我們把邊集陣列中的每一條邊按照起點從小到大排序,如果起點相同就按照終點從小到大排序,並記錄下以某個點為起點的所有邊在陣列中的起始位置和儲存長度,那麼前向星就構造好了.用len i 來記錄所有以i為起點的邊在陣列中的儲存長度.用head i 記...