鍊錶的節點刪除有兩種情況
一、刪除頭節點
將頭結點變為第二個節點即可。
二、刪除非頭節點
將要刪除的節點的前乙個節點指向到要刪除的節點的下乙個節點。
//定義結構體
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 改為按計算機成績遞增排序的單向鍊錶,並統計出高於平均...