資料結構 線性表 線性表的靜態鏈式表示

2021-07-30 13:48:22 字數 918 閱讀 2151

/*

*資料結構:線性表的靜態鏈式表示

*單鏈表 靜態鍊錶

*線性表元素序號從1算起

*l[0]專設為頭結點

*date:2017/4/14

*/#include #include #define initsize 100

#define elemtype char

typedef struct lnodelinklist[initsize];

void initlist(linklist l); //靜態鍊錶初始化

void createlist1(linklist &l); //頭插法建立單鏈表

void createlist2(linklist &l); //尾插法建立單鏈表

int getelem(linklist l,int i); //按序號查詢表結點值

int locateelem(linklist l,elemtype e); //按值按序號順序查詢表結點在鍊錶l中第一次出現的位置

void listinsert(linklist l,int i,elemtype e); //在第i個結點位置插入新結點,元素值為e

void listdelete(linklist l,int i,elemtype *e); //刪除第i個結點,用e返回刪除元素的值

void printlist(linklist l); //按先後序號列印鍊錶

bool emptylist(linklist l); //判斷鍊錶是否為空,為空就返回true,否則返回false

int lengthlist(linklist l); //返回鍊錶長度

void destorylist(linklist l); //銷毀鍊錶

void initlist(linklist l){

int i;

for(i=0;i

資料結構 線性表 2 鏈式表

鍊錶 所有元素不考慮相鄰位置,哪有空位就到 鍊錶分為單鏈表 雙鏈表 迴圈鍊錶。1.獲得鍊錶第i個資料的演算法思路 1 宣告乙個結點p指向鍊錶第乙個結點,初始化j從1開始 2 當j3 若到鍊錶末尾p為空,則說明第i個元素不存在 4 否則查詢成功,返回結點p的資料。2.單鏈表的插入和刪除 插入 1 宣告...

資料結構 鏈式儲存線性表

鏈式儲存結構的線性表 簡稱為鍊錶 將採用一組位址任意的儲存單元存放線性表中的資料元素,鏈式結構的線性表不會按線性的邏輯順序來儲存資料元素,它需要在每乙個資料元素裡儲存乙個引用下乙個資料元素的引用。優點 插入 刪除元素快,充分利用計算機記憶體空間 缺點 查詢元素需要整體遍歷,空間開銷大 單鏈表 cre...

鏈式線性表

2013 03 23 00 14 39 上學期的時候就大致看了資料結構與演算法分析的了,但感覺收穫比較少,總結原因是程式設計實踐少了,所以今年趁著老師上課,就多進行一些 的實踐,也準備拿一些acm的題目來練練。中午的時候就將鏈式表的 打了一遍,現在貼上來分享。為了節省時間,我的注釋也相對較少,有不懂...