重念一次早該補起來的「資料結構與演算法」。這篇筆記下連結串列 ( Linked List ) 的 shift 和 unshift。
課程相關資訊
[連結]:https://hiskio.com/courses/572/lectures/29838
本篇範圍:Chapter 8
請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。
內容
shift 是移除第一個,想法是:
1. 將 this.head 給指向原先陣列的第二個即可
unshift 則是從頭加入一個陣列:
1. 若原始沒有節點,那就將 this.head 直接指向新的節點
2. 若原始已經有節點,那就將 this.head 指向這個新節點,並把這個新節點的 next 指向原有的 this.head