4 資料結構單鏈表之煉表成員的插入與刪除

2021-08-13 21:43:59 字數 1164 閱讀 8720

listnode creatlisttail(listnode* l, int a, int len) 

return *l;

}

2.下面是單鏈表的插入函式

listnode listnodeinsert(listnode* l,int index,int value) 

while (p&&(i+

1) < index)

if (!p || (i+

1) > index)

trans->next = p->next; //進行插入操作

p->next = trans;

return

*l;}

3.單鏈表成員刪除操作

listnode listnodedelete(listnode* l, int

index)

while (p&&i < index)

if (!p || i < index)

r = p->next; //刪除操作

p->next = r->next;

free(r);

return

*l;}

4.main函式顯示效果:

int main() ;

test = creatlisttail(&test, aa, 5);

cout

<< "插入資料前:"

<< endl;

showlist(&test);

test = listnodeinsert(&test, 2, 9);

cout

<< "插入資料後:"

<< endl;

showlist(&test);

cout

<< "刪除剛才插入的資料:"

資料結構 鍊錶之單鏈表

單鏈錶即每個節點都存在資料域和指標域 特殊節點除外 每個節點都乙個直接前驅節點和直接後繼節點 頭節點無前驅,尾節點無後繼 簡單來說就是上乙個節點的指標域中存放了下乙個節點的位址,因此可以實現層層節點依次查詢,時間複雜度為o n 這也就是相對順序表而言的缺點,但是對於頻繁的插入和刪除節點卻是相對於順序...

資料結構03 鍊錶之單鏈表

鍊錶帶頭結點和不帶頭結點的區別?完成單鏈表的以下基本操作 完整 鍊錶的結構非常多樣,以下情況組合起來就有8種鍊錶結構 單向 雙向 帶頭 不帶頭 迴圈 非迴圈 鍊錶的節點 typedef struct slistnode node,pnode 鍊錶的結構,給乙個頭指標儲存鍊錶第乙個節點的位址 type...

資料結構 鍊錶1(單鏈表)

資料結構 單鏈表 單鏈表的定義 單鏈表是用一組任意的儲存單元存放線性表的元素,這組儲存單元可以連續也可以不連續,甚至可以零散分布在記憶體中的任意位置。每個儲存單元在儲存資料元素的同時,還必須儲存其後記元素的位址資訊,這個位址資訊稱為指標。這兩部分組成了資料元素的儲存映像,稱為結點。結點node分為資...