↓快轉到主要內容

Stack

LeetCode 897: Increasing Order Search Tree
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search Binary-Search-Tree
LeetCode 897 解題筆記:中序遍歷,依序把節點接到一條只有右小孩的鏈上,左小孩設成 None;dummy 和移動的尾巴要分開
LeetCode 844: Backspace String Compare
·1 分鐘
LeetCode Easy Two-Pointers String Stack Simulation
LeetCode 844 解題筆記:用 stack 模擬退格;O(1) 空間的話從尾巴往前,遇到 # 就記下要跳過幾個字元
LeetCode 682: Baseball Game
·1 分鐘
LeetCode Easy Array Stack Simulation
LeetCode 682 解題筆記:用 stack 存有效的分數,C 刪掉最後一個,D 加入兩倍,+ 加入最後兩個的和
LeetCode 590: N-ary Tree Postorder Traversal
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search
LeetCode 590 解題筆記:後序是先每個小孩再自己;迭代時可以做「根、小孩由右到左」的前序再整個反轉
LeetCode 589: N-ary Tree Preorder Traversal
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search
LeetCode 589 解題筆記:N 叉樹的前序,先記錄自己,再依序處理每個小孩;遞迴結果要用 extend 攤平,不是 append 一個 list
LeetCode 234: Palindrome Linked List
·1 分鐘
LeetCode Easy Linked-List Two-Pointers Stack Recursion
LeetCode 234 解題筆記:快慢指針找中點,反轉後半段,再從兩端往中間比;O(1) 額外空間
LeetCode 232: Implement Queue using Stacks
·1 分鐘
LeetCode Easy Stack Design Queue
LeetCode 232 解題筆記:兩個 stack:in 負責 push,out 空的時候才把 in 全部倒過去,均攤 O(1)
LeetCode 225: Implement Stack using Queues
·1 分鐘
LeetCode Easy Stack Design Queue
LeetCode 225 解題筆記:一個 queue 就夠:push 之後把前面的元素全部轉到後面,新元素就到了隊首
LeetCode 145: Binary Tree Postorder Traversal
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search Binary-Tree
LeetCode 145 解題筆記:迭代的後序遍歷,節點第一次彈出時標記後放回去,再依序推右、左小孩;第二次彈出才記錄
LeetCode 94: Binary Tree Inorder Traversal
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search Binary-Tree
LeetCode 94 解題筆記:迭代的中序遍歷,一路往左把節點推進 stack,彈出時記錄,再轉向右子樹
LeetCode 144: Binary Tree Preorder Traversal
·1 分鐘
LeetCode Easy Stack Tree Depth-First-Search Binary-Tree
LeetCode 144 解題筆記:迭代的前序遍歷,彈出就記錄,先推右小孩再推左小孩,左邊才會先處理