0%

Data Structure | Linked Lists

此篇為 Udemy「JavaScript Algorithms and Data Structures Masterclass」的學習筆記系列。

定義

由一連串的 nodes 組成。
1.head node (Linked List 開頭)
2.tail node (Linked List 結尾)
3.length

(取自課堂 PPT)

那什麼是 Node?

中文翻譯為「節點」。
內容包含:
1.value
2.指向 其他節點或是 null 的 pointer

應用的情景

通常在遇到需要大量處理資料的時候,Linked Lists 能夠快速插入/移除 node。

Arrays V.S. Lists

Lists:

  • 沒有 index
  • 多個 node 相連組成
  • 無法隨機存取 node,需要從頭開始掃一遍尋找 node

Arrays:

  • index
  • 在插入或是刪除的成本上會比 Lists 費時,其他 index 會被接連改動。
  • 可以藉由 index 快速拿取 node