鍊錶的物理儲存結構是用一組位址任意的儲存單元儲存資料
鍊錶結構中,儲存的每個資料元素記錄都存放到鍊錶的乙個結點(node)中,而每個結點之間由指標將其連線在一起。
鍊錶存在以下特徵:
2、鍊錶邏輯上連續,物理上並不一定連續儲存結點。
3、只要獲得的頭結點,就可以通過指標遍歷整條鍊錶
//鍊錶結點用c語言描述:
typedef struct nodelnode, *linklist;
定義乙個指向lnode型別資料的指標型別變數時,語句lnode *l;
和linklist l;
是等價的。
建立乙個鍊錶的過程可以通過下面**:
linklist greatlinklist(int n)
return list;
}
destroylinklist()
的作用是銷毀乙個鍊錶list。
1、首先將*list
的內容賦值給p,這樣p也指向鍊錶的第乙個結點,成為了鍊錶的表頭
2、然後判斷只要p不為空(null)
,就將p指向的下乙個結點的指標(位址)賦值給q,並應用函式free()釋放掉p所指向的結點,p再指向下乙個結點。如此迴圈,直到鍊錶為空為止。
3、最後將*list
的內容置為null
,這樣主函式中的鍊錶list
就為空了
void destroylinklist(linklist *list)
*list=null;
}
資料結構C語言實現 銷毀鍊錶
1.首先,將 list 頭指標 賦值給p,這樣p也指向鍊錶的第乙個結點,成為鍊錶的表頭 2.然後判斷只要p不為空,就將p指向下乙個的指標賦值給q,再釋放掉p 3.之後再將q賦值給p,用來找到下一輪釋放掉的結點的下乙個結點 如下 include includetypedef struct node n...
C 資料結構 鍊錶(鍊錶節點建立)
本文是為了以下建立鍊錶更加方便,而編寫的c 標頭檔案,作用是建立乙個節點類,此處不採用class,而用struct。struct和class的區別在於 二者的訪問許可權不同!前者 訪問許可權是public 後者 訪問許可權是private 節點類的標頭檔案 如下 ifndef listnode hh...
C語言 鍊錶 資料結構實驗之鍊表一 順序建立鍊錶
problem description 輸入n個整數,按照輸入的順序建立單鏈表儲存,並遍歷所建立的單鏈表,輸出這些資料。input 第一行輸入整數的個數n 第二行依次輸入每個整數。output 輸出這組整數。example input 8 12 56 4 6 55 15 33 62 example ...