資料結構例程 單鏈表的建立

2021-07-05 05:53:02 字數 1293 閱讀 1846

本文是資料結構基礎系列網路課程(2):線性表中第9課時建立單鏈表中所講的例程。

【例程】

定義單鏈表儲存結構,用頭插法和尾插法建立單鏈表,並顯示建立好以後的結果。

#include 

#include

typedef

int elemtype;

typedef

struct lnode //定義單鏈表結點型別

linklist;

void createlistf(linklist *&l,elemtype a,int n);//頭插法建立單鏈表

void createlistr(linklist *&l,elemtype a,int n);//尾插法建立單鏈表

void destroylist(linklist *&l); //銷毀單鏈表

void displist(linklist *l); //輸出單鏈表

int main()

; createlistf(l1, a, 8);

printf("頭插法建表結果:");

displist(l1);

createlistr(l2, a, 6);

printf("尾插法建表結果:");

displist(l2);

destroylist(l1);

destroylist(l2);

return0;}

void createlistf(linklist *&l,elemtype a,int n)//頭插法建立單鏈表

}void createlistr(linklist *&l,elemtype a,int n)//尾插法建立單鏈表

r->next=null; //終端結點next域置為null

}void destroylist(linklist *&l) //銷毀單鏈表

free(p); //此時q為null,p指向尾結點,釋放它

}void displist(linklist *l) //輸出單鏈表

printf("\n");

}

補充:

在不少場合,建立的鍊錶要求是有序的。建立有序的鍊錶,常常需要從頭結點開始,找到插入的位置,然後將其插入即可。對每個乙個結點均是這樣。

下面給出的建立有序(公升序)鍊錶的**,作為參考:

void createlisto(linklist *&l,elemtype a,int n)  //建立有序(公升序)的單鏈表

}

資料結構 單鏈表建立

順序表是一組連續的儲存單元來依次儲存線性表中的結點,而鍊錶是用一組任意的儲存單元來存放線性表中的結點,這組儲存單元可不連續分布在記憶體中的任何位置上。因此,鍊錶中結點的邏輯順序與儲存順序不一定相同。為了體現各結點儲存單元之間的邏輯關係,再儲存每個結點的同時,還必須儲存與之聯絡的相鄰結點的位址資訊,這...

資料結構 單鏈表的建立

1 尾插法 1 不帶頭結點 typedef int elementtype typedef struct node list struct node list create return ptrl 2 帶頭結點 list create return ptrl 2 頭插法 1 不帶頭結點 list c...

資料結構 單鏈表建立 插入 刪除

include include include include include using namespace std typedef struct lnode linklist void initlist linklist head 初始化鍊錶 void createlista linklist ...