LeetCode
LeetCode 876: Middle of the Linked List
·1 分鐘
LeetCode
Easy
Linked-List
Two-Pointers
LeetCode 876 解題筆記:快指針一次兩步、慢指針一次一步,快的走到底時慢的在中間;偶數長度時停在偏右的中點
LeetCode 872: Leaf-Similar Trees
·1 分鐘
LeetCode
Easy
Tree
Depth-First-Search
Binary-Tree
LeetCode 872 解題筆記:用 DFS 由左到右收集葉子;BFS 收集的順序是一層一層,不是由左到右
LeetCode 868: Binary Gap
·1 分鐘
LeetCode
Easy
Bit-Manipulation
LeetCode 868 解題筆記:記錄上一個 1 的位置,每遇到新的 1 就算距離取最大值
LeetCode 867: Transpose Matrix
·1 分鐘
LeetCode
Easy
Array
Matrix
Simulation
LeetCode 867 解題筆記:轉置後的大小是 n × m,res[j][i] = matrix[i][j];Python 可以用 zip(*matrix)
LeetCode 860: Lemonade Change
·2 分鐘
LeetCode
Easy
Array
Greedy
LeetCode 860 解題筆記:只記 5 元和 10 元的張數;找 15 元時優先用 10 + 5,因為 5 元比較萬用
LeetCode 859: Buddy Strings
·1 分鐘
LeetCode
Easy
Hash-Table
String
LeetCode 859 解題筆記:長度要相同;完全相同時要有重複字元;否則剛好兩個位置不同而且交叉相等
LeetCode 844: Backspace String Compare
·1 分鐘
LeetCode
Easy
Two-Pointers
String
Stack
Simulation
LeetCode 844 解題筆記:用 stack 模擬退格;O(1) 空間的話從尾巴往前,遇到 # 就記下要跳過幾個字元
LeetCode 836: Rectangle Overlap
·1 分鐘
LeetCode
Easy
Math
Geometry
LeetCode 836 解題筆記:兩個矩形重疊等價於 x 方向和 y 方向的區間都重疊,min(右邊) > max(左邊)
LeetCode 832: Flipping an Image
·1 分鐘
LeetCode
Easy
Array
Two-Pointers
Bit-Manipulation
Matrix
LeetCode 832 解題筆記:每一列先左右反轉再把 0、1 互換;可以用左右指針同時做
LeetCode 824: Goat Latin
·1 分鐘
LeetCode
Easy
String
LeetCode 824 解題筆記:切成單字後逐一轉換:子音開頭把第一個字母移到最後,再加 ma 和 i + 1 個 a
LeetCode 821: Shortest Distance to a Character
·1 分鐘
LeetCode
Easy
Array
Two-Pointers
String
LeetCode 821 解題筆記:左往右掃一次記錄到左邊最近的 c 的距離,右往左再掃一次取較小值
LeetCode 819: Most Common Word
·1 分鐘
LeetCode
Easy
Array
Hash-Table
String
Counting
LeetCode 819 解題筆記:標點換成空白、全部轉小寫再切單字,計數後找出不在 banned 裡的最多的那個