鏈表學習參考網址

1、鏈表上與下(編程經驗總結):

https://www.w3xue.com/exp/article/201810/2260.html

https://www.w3xue.com/exp/article/201810/2259.html

 

2、[數據結構與算法] 鏈表:哨兵

針對鏈表的插入、刪除操作,需要對插入第一個結點和刪除最後一個結點的情況進行特殊處理。這樣代碼實現起來就會很繁瑣,不簡潔,而且也容易因爲考慮不全而出錯。如何來解決這個問題呢?

技巧三中提到的哨兵就要登場了。哨兵,解決的是國家之間的邊界問題。同理,這里說的哨兵也是解決“邊界問題”的,不直接參與業務邏輯。如果我們引入哨兵結點,在任何時候,不管鏈表是不是空,head 指針都會一直指向這個哨兵結點。我們也把這種有哨兵結點的鏈表叫帶頭鏈表。相反,沒有哨兵結點的鏈表就叫作不帶頭鏈表。哨兵結點是不存儲數據的。因爲哨兵結點一直存在,所以插入第一個結點和插入其他結點,刪除最後一個結點和刪除其他結點,都可以統一爲相同的代碼實現邏輯了。
https://blog.csdn.net/qq_25800311/article/details/88855797

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章