鏈式儲存結構

2021-08-19 15:22:42 字數 2512 閱讀 9814

鍊錶的基本概念:

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...

鏈式儲存結構

它不要求邏輯上相鄰的元素在物理位置上也相鄰.因此它沒有順序儲存結構所具有的弱點,但也同時失去了順序錶可隨機訪問的優點.編輯 一般在計算機的硬碟中,檔案都是鏈式儲存的。我們知道,多個 扇區組成乙個 簇,簇是計算機儲存資料的基本單位。而乙個檔案是儲存在多個在空間上也許並不相連的簇中的。這就是鏈式儲存。但...