C語言學習筆記 鍊錶(四)鍊錶的刪除

2021-10-18 13:30:30 字數 1374 閱讀 9729

鍊錶的節點刪除有兩種情況

一、刪除頭節點

將頭結點變為第二個節點即可。

二、刪除非頭節點

將要刪除的節點的前乙個節點指向到要刪除的節點的下乙個節點。

//定義結構體

struct test

;//輸出鍊錶資料

void

printlink

(struct test *head)

putchar

('\n');

}struct test *

dellinknode

(struct test *head,

int data)

while

(point->next !=

null

)//跳到下一節點

point = point->next;

}printf

("delete faulat!\n");

return head;

}int

main()

;struct test t2 =

;struct test t3 =

;struct test t4 =

;struct test t5 =

;struct test new =

;//指向對應節點位址形成鍊錶

t1.next =

&t2;

t2.next =

&t3;

t3.next =

&t4;

t4.next =

&t5;

head =

&t1;

//輸出

printlink

(head);

head =

dellinknode

(head,1)

;printlink

(head);

head =

dellinknode

(head,3)

;printlink

(head)

;return0;

}執行結果:

C語言學習筆記 鍊錶

鍊錶是一種常見的重要的資料結構。它是動態地進行儲存分配的一種結構。它可以根據需要開闢記憶體單元。鍊錶有乙個 頭指標 變數,以head表示,它存放乙個位址。該位址指向乙個元素。鍊錶中每乙個元素稱為 結點 每個結點都應包括兩個部分 一為使用者需要用的實際資料,二為下乙個結點的位址。因此,head指向第乙...

C語言學習筆記 鍊錶(三)鍊錶的插入

從指定節點後方插入新節點 假設我們已有五個節點,我們要把乙個新節點new插入到3後邊。需要三個步驟 找到 3 這個節點。把新節點指向3這個節點的下乙個節點 3 next new next 把3指向新節點。3 next new 定義結構體 struct test 輸出鍊錶資料 void printli...

C語言學習 鍊錶

建立單鏈表,每個節點包括學號 姓名 性別 年齡和計算機成績。實現按學號刪除 鍊錶中指定結點的功能。2.將 1 中建立的單向鍊錶 a 分別拆成兩個鍊錶 b,c。b 中存放 80 分以上成績的節點,c 中存放其他結點。3.將 1 中建立的單向鍊錶 a 改為按計算機成績遞增排序的單向鍊錶,並統計出高於平均...