使用 C 語言刪除連結串列的頭節點和尾節點的邏輯。
連結串列使用動態記憶體分配,即它們會根據需要增長和縮小。它是由節點組成的集合。
節點有兩個部分,分別是資料和連結。下面將解釋這些部分。

連結串列上的操作
連結串列上有三種操作,如下所示:
- 插入
- 刪除
- 遍歷
刪除
- 識別節點。
- 調整連結,以便節點的釋放不會使列表成為不連貫的元件。
- 返回/顯示要刪除的元素。
- 釋放記憶體。
刪除頭節點
請按照以下步驟在 C 程式語言中刪除頭節點。
1. void del_head()
2. {
3. int x;
Node *temp;
4. if(Head==NULL)
5. {
6. printf("List is empty");
7. return;
8. }
9. x=Head->ele;
10. temp=Head;
11. if(Head==Tail)
12. Head=Tail=NULL:
13. Else
14. Head=Head->next;
15. printf("Deleted element %d",x);
16. free(temp);
17. }這裡,
步驟 4 - 檢查列表是否為空。
步驟 9 - 讀取要刪除的元素。
步驟 10 - 頭節點由 temp 指標引用。
步驟 11 - 檢查是否為最後一次刪除。
步驟 14 - 將頭指標移動到列表中的下一個元素。
步驟 15 - 顯示要刪除的元素。
步驟 16 - 釋放記憶體。
刪除尾節點
請按照以下步驟在 C 程式語言中刪除尾節點。
1. void del_tail()
2. {
3. int x;
4. Node *temp;
5. if(Head==NULL)
6. {
7. printf("List is empty");
8. return;
9. }
10. temp=Head;
11. while(temp->next !=Tail)
12. temp=temp->next;
13. x=Tail->ele;
14. Tail=temp;
15. Temp=temp->next
16. Tail->next=NULL;
17. printf("Deleted element %d",x);
18. free(temp);
19. }這裡,
步驟 4 - 檢查列表是否為空。
步驟 10、11、12 - 將 temp 指標移動到列表中倒數第二個節點。
步驟 13 - 讀取要刪除的尾節點元素。
步驟 14 - 將尾指標移動到倒數第二個節點。
步驟 15 - 將 temp 指標移動到列表的最後一個節點。
步驟 16 - 刪除尾節點到 temp 節點的引用。
步驟 17 - 顯示要刪除的元素。
步驟 18 - 釋放記憶體。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP