雙向連結串列增刪改查分析和實現_韓順平聽課筆記
阿新 • • 發佈:2021-09-04
24.雙向連結串列增刪改查分析
- 單鏈表缺點:1.查詢方向單一;2.節點不能自我刪除
- 雙向連結串列的增刪改,遍歷思路
25.雙向連結串列增刪改查程式碼實現
- 資料結構,屬性,next,pre
- class DoubleLinkedList,初始化一個頭節點,private HeroNode2 head=new HeroNode2();
- getHead()返回頭節點return head
- 遍歷,同單鏈表
- 新增一個節點到雙向連結串列的末尾
- 修改思路同單鏈表,只需要修改下節點型別
- 從雙向連結串列中刪除一個節點,可以自我刪除,輔助節點直接指向待刪除節點,flag標誌是否找到待刪除節點;
temp.next.pre=temp.pre有問題:刪除的是最後一個節點,即沒有下一個節點temp.next=null;
解決方案:
進行判斷,如果是最後一個節點,則不執行temp.next.pre=temp.pre
或進行判斷,如果不是最後一個節點,則執行temp.next.pre=temp.pre(不用寫else)
26.雙向連結串列功能測試和小結
- 建立節點
- 建立一個雙向連結串列
- 遍歷
- 修改
- 刪除
練習:雙向連結串列按照標號順序新增節點