LeetCode
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 575: Distribute Candies
·1 分鐘
LeetCode
Easy
Array
Hash-Table
LeetCode 575 解題筆記:最多只能吃 n / 2 顆,種類最多 len(set),答案是兩者的較小值
LeetCode 572: Subtree of Another Tree
·1 分鐘
LeetCode
Easy
Tree
Depth-First-Search
String-Matching
Binary-Tree
LeetCode 572 解題筆記:對 root 的每一個節點都檢查一次「以它為根的子樹跟 subRoot 是否相同」;遞迴時要呼叫 isSubtree,不是只比左右小孩
LeetCode 566: Reshape the Matrix
·1 分鐘
LeetCode
Easy
Array
Matrix
Simulation
LeetCode 566 解題筆記:元素總數不同就回傳原矩陣;否則第 k 個元素放到 (k // c, k % c)
LeetCode 563: Binary Tree Tilt
·1 分鐘
LeetCode
Easy
Tree
Depth-First-Search
Binary-Tree
Dp-on-Trees
LeetCode 563 解題筆記:後序回傳子樹的總和,每個節點的 tilt 是左右子樹總和的差,加進答案
LeetCode 561: Array Partition
·1 分鐘
LeetCode
Easy
Array
Greedy
Sorting
Counting-Sort
LeetCode 561 解題筆記:排序後相鄰兩個一組,每組的最小值就是偶數位置的數,加總
LeetCode 559: Maximum Depth of N-ary Tree
·1 分鐘
LeetCode
Easy
Tree
Depth-First-Search
Breadth-First-Search
LeetCode 559 解題筆記:深度等於 1 加上所有小孩深度的最大值;沒有小孩時是 1
LeetCode 557: Reverse Words in a String III
·1 分鐘
LeetCode
Easy
Two-Pointers
String
LeetCode 557 解題筆記:用空白切開,每個單字各自反轉,再用空白接回去
LeetCode 551: Student Attendance Record I
·1 分鐘
LeetCode
Easy
String
LeetCode 551 解題筆記:A 少於 2 次,而且字串裡沒有 LLL
LeetCode 543: Diameter of Binary Tree
·1 分鐘
LeetCode
Easy
Tree
Depth-First-Search
Binary-Tree
Dp-on-Trees
LeetCode 543 解題筆記:直徑可能不經過根;後序回傳高度,同時在每個節點用「左高 + 右高」更新答案;算的是邊數
LeetCode 541: Reverse String II
·1 分鐘
LeetCode
Easy
Two-Pointers
String
LeetCode 541 解題筆記:每 2k 個為一段,反轉每段的前 k 個;最後一段不足 k 個時全部反轉,切片會自動處理