一頁一個主題,照著路線圖一關一關解鎖。點卡片進入,每頁都能點左上角回到這裡。
最基本的容器,靠編號直接抓資料。附「直取 vs 搬家」視覺化。
開始學 → O(1)節點牽著節點,插入刪除只改指標 O(1),查找要走訪 O(n)。附節點指標視覺化。
開始學 → O(1)後進先出,像疊起來的盤子。push/pop 全 O(1),附疊盤子互動操場。
開始學 → O(1)先進先出,像排隊買珍奶。用 deque 兩端 O(1),附排隊互動操場。
開始學 → O(1)用鑰匙直接算出位置,查找 O(1) 的解題神器。附雜湊 + 碰撞視覺化。
開始學 → O(log n)分岔結構,左小右大,查找平均 O(log n)。附 BST 搜尋路徑視覺化。
開始學 → O(log n)最大或最小值永遠在頂端(peek O(1)),優先佇列的引擎。附上浮插入視覺化。
開始學 → O(V+E)節點加邊,能表達任何關係網。附 BFS / DFS 走訪動畫。
開始學 →一個一個找,O(n)。最萬用、不用排序,附掃描視覺化。
開始學 → O(log n)已排序時每次砍一半。新手第一個「聰明」演算法,附一步步視覺化。
開始學 → O(V+E)一層層往外擴,不加權時保證最短步數。附迷宮水波視覺化。
開始學 → O(V+E)一條路走到底再回頭。回溯與拓樸排序的基礎,附迷宮回溯視覺化。
開始學 →相鄰兩兩比,大的往後冒。附可一步步走的排序動畫。
開始學 → O(n²)每輪挑最小、或像整理撲克牌。附選擇 vs 插入步進動畫。
開始學 → O(n log n)切一半各自排好再合併。學分治的第一課,附合併步進器。
開始學 → O(n log n)選基準,小的丟左大的丟右。實務最常用,附 partition 步進器。
開始學 →函式自己呼叫自己,大問題拆小問題。附呼叫堆疊視覺化。
開始學 → O(n log n)分、治、合。合併/快速排序都是這派。附分→治→合視覺化。
開始學 → O(n!)走不通就退回換一條。解迷宮、數獨。附四皇后回溯視覺化。
開始學 → O(n)~O(n²)把算過的答案記下來,避免重複計算。附爬樓梯填表視覺化。
開始學 → O(n log n)每步都選當下最好的,不回頭。附找零視覺化(含失敗反例)。
開始學 →兩個指標從頭尾夾,或一快一慢。把 O(n²) 壓到 O(n),附頭尾夾視覺化。
開始學 → O(n)會伸縮的窗框,求連續一段的最佳解。附固定視窗最大和視覺化。
開始學 → O(1)先算累加和,之後查區間和都 O(1)。附建表 + 區間查詢視覺化。
開始學 →把單字拆成字母掛成樹,前綴共用。自動補全、拼字檢查的基礎,附建樹視覺化。
開始學 → ≈O(1)管理「誰跟誰同一國」。合併集合、查連通,附 union/find 森林視覺化。
開始學 → O(E log V)加權圖找最短路,優先佇列挑最近的。地圖導航就靠它,附鬆弛動畫。
開始學 → O(n+m)在文字裡找樣式,失敗時靠失敗函數跳、不整個回頭。附失敗跳躍視覺化。
開始學 → O(log n)可以隨時改值的前綴和,更新/查詢都 O(log n)。兼談線段樹,附位元跳格視覺化。
開始學 → O(V·E)~O(V³)負權邊也能算、還能抓負環;Floyd 一次求全點對最短路。附逐輪鬆弛動畫。
開始學 → O(E log V)Dijkstra 加方向感,f=g+h 朝終點直奔。地圖與遊戲尋路首選,附格子尋路動畫。
開始學 → O(V+E)把有先後相依的事情排成一條直線。排課、編譯、任務排程都靠它,附 Kahn 入度法動畫。
開始學 → O(log n)區間查詢與區間更新全 O(log n)。懶標記是殺手鐧,比 Fenwick 更萬用,附 push down 動畫。
開始學 → O(log n)BST 照順序插入會歪成鏈,自平衡樹靠旋轉保持矮胖。附 BST 退化 vs AVL 旋轉動畫。
開始學 → O(E log V)用最少總成本把所有點連起來。電網、道路、光纖骨幹都靠它,附 Kruskal vs Prim 動畫。
開始學 → O(n)O(n) 找最長回文子串。插分隔符統一奇偶、靠鏡射跳過重複比較,附逐位置半徑動畫。
開始學 → O(n+m+z)一次比對一大堆關鍵字。Trie + KMP 失敗函數,掃一遍找出全部。附建 fail 指標與比對動畫。
開始學 → O(n log n)把所有後綴排好序,子串搜尋、找重複全變快。配 LCP 是字串瑞士刀,附 banana 排序動畫。
開始學 → O(log n)算 aⁿ 不用乘 n 次。平方+看二進位壓成 O(log n),矩陣版秒算費氏數。附 3¹³ 與 M¹³ 動畫。
開始學 →