資料結構 · 5 個細項
Linked List鏈結串列
鏈結串列放棄連續記憶體,換取在已知位置 O(1) 插入與刪除。它本身用得不算多,但指標操作的直覺、快慢指標技巧,以及作為 LRU 快取與樹的前身,讓它成為必經之路。
為什麼要學 Linked List
現實中的應用細項
5 篇#演算法複雜度難度狀態
01Singly Linked List 單向鏈結串列節點、指標、頭節點與哨兵節點用在:理解指標、實作佇列與堆疊插入 O(1)、查 O(n)空間 O(n)可學習02Doubly Linked List 雙向鏈結串列可以雙向走,O(1) 刪除任意已知節點用在:LRU 快取、瀏覽紀錄、undo/redoO(1) 刪除空間 O(n)可學習03Reverse Linked List 反轉串列迭代三指標與遞迴兩種寫法用在:指標操作的基本功、面試高頻O(n)空間 O(1)可學習04Fast & Slow Pointers 快慢指標找中點、環偵測(Floyd)、環的起點用在:偵測循環參照、找中點切半O(n)空間 O(1)可學習05Merge Lists 合併串列合併兩條有序串列,K 條時用堆積用在:合併排序的核心、合併多個有序資料流O(n+m)空間 O(1)可學習