鍊錶的基本概念:
1、表頭結點
鍊錶中的第乙個結點,包含指向第乙個資料元素的指標以及鍊錶自身的一些資訊
2、資料結點
鍊錶中代表資料元素的結點,包含指向下乙個資料元素的指標和資料元素的資訊
3、尾結點
鍊錶中最後乙個資料結點,其下乙個元素指標為空,表示無後繼
main函式裡寫個測試程式
#include #include #include "seqlist.h"
#include "linklist.h"
//定義資料元素,包含next指標和本身資料元素
typedef struct value
sv;int main()
while(linklist_length(list))
linklist_destroy(list);
/*int index=0;
linklist* list = linklist_create();
int i=0;
int j=1;
int k=2;
int x=3;
int y=4;
int z=5;
seqlist_insert(list,&i,0);
seqlist_insert(list,&j,0);
seqlist_insert(list,&k,0);
seqlist_insert(list,&x,0);
seqlist_insert(list,&y,0);
seqlist_insert(list,&z,0);
for(index=0; index0)
seqlist_destroy(list);
*/return 0;
}
注意頭插法和尾插法的區別。
鍊錶與線性表相比:
優點是無需一次性定製線性表的容量,插入和刪除無需移動資料元素
缺點是資料元素必須儲存後繼元素的位置資訊,獲取指定資料的元素操作需要順序訪問之前的元素,要從頭結點開始。
鏈式儲存結構
鍊錶的基本概念 鍊錶是一種線性表,但與陣列不同的是,它允許表中元素的儲存單元任意,由指標將儲存表元素的單元串聯起來,因此稱為鏈式儲存結構 鍊錶可以避免刪除或插入元素時移動大量元素,便於擴充套件儲存空間 對於每個資料元素ai來說,除了儲存其本身的資訊之外,還需儲存乙個指示其直接後繼或前驅的資訊。這兩部...
鏈式儲存 結構
鏈式儲存 結構 功能 增加 刪除 查詢 替換 返回總個數 2018年5月11日15點33分 include include define ele int typedef struct linkarrary linkarray linkarray new void add linkarray l,el...
鏈式儲存結構
它不要求邏輯上相鄰的元素在物理位置上也相鄰.因此它沒有順序儲存結構所具有的弱點,但也同時失去了順序錶可隨機訪問的優點.編輯 一般在計算機的硬碟中,檔案都是鏈式儲存的。我們知道,多個 扇區組成乙個 簇,簇是計算機儲存資料的基本單位。而乙個檔案是儲存在多個在空間上也許並不相連的簇中的。這就是鏈式儲存。但...