Medium
LeetCode 3121: Count the Number of Special Characters II
·1 分鐘
LeetCode
Medium
Hash-Table
String
LeetCode 3121 解題筆記:記錄每個字母小寫最後一次出現和大寫第一次出現的位置,小寫最後一次在大寫第一次之前才算
LeetCode 735: Asteroid Collision
·1 分鐘
LeetCode
Medium
Array
Stack
Simulation
LeetCode 735 解題筆記:從左到右用 stack,只有「stack 頂端往右、目前的往左」才會相撞,小的爆掉,一樣大一起爆
LeetCode 988: Smallest String Starting From Leaf
·1 分鐘
LeetCode
Medium
String
Backtracking
Tree
Depth-First-Search
LeetCode 988 解題筆記:DFS 時把字元加在字串前面,到葉子時就是「從葉子到根」的字串,取最小的
LeetCode 1814: Count Nice Pairs in an Array
·1 分鐘
LeetCode
Medium
Array
Hash-Table
Math
Counting
LeetCode 1814 解題筆記:把條件移項成 nums[i] - rev(nums[i]) == nums[j] - rev(nums[j]),按這個值分組數 pair,記得取模
LeetCode 3075: Maximize Happiness of Selected Children
·1 分鐘
LeetCode
Medium
Array
Greedy
Sorting
LeetCode 3075 解題筆記:由大到小選 k 個,第 i 個選的會被扣 i,扣到 0 為止
LeetCode 3071: Minimum Operations to Write the Letter Y on a Grid
·1 分鐘
LeetCode
Medium
Array
Hash-Table
Matrix
Counting
LeetCode 3071 解題筆記:分別數 Y 上和 Y 外每個值的次數,枚舉 Y 的值 a 和背景的值 b(a != b),取最少要改的格子數
LeetCode 3070: Count Submatrices with Top-Left Element and Sum Less Than k
·1 分鐘
LeetCode
Medium
Array
Matrix
Prefix-Sum
LeetCode 3070 解題筆記:包含左上角的子矩陣就是二維前綴和 P[i][j],數有幾個 <= k
LeetCode 611: Valid Triangle Number
·1 分鐘
LeetCode
Medium
Array
Two-Pointers
Binary-Search
Greedy
LeetCode 611 解題筆記:排序後固定最長邊 k,左右指針找兩短邊:和夠大時中間的都可以,一次加 j - i 個
LeetCode 540: Single Element in a Sorted Array
·1 分鐘
LeetCode
Medium
Array
Binary-Search
LeetCode 540 解題筆記:單獨的那個出現之前,每一對都從偶數 index 開始;二分看偶數位置 mid 和 mid + 1 是否相同
LeetCode 275: H-Index II
·1 分鐘
LeetCode
Medium
Array
Binary-Search
LeetCode 275 解題筆記:引用數已排序,找第一個 citations[i] >= n - i 的位置,答案是 n - i;用二分做到 O(log n)
LeetCode 92: Reverse Linked List II
·1 分鐘
LeetCode
Medium
Linked-List
LeetCode 92 解題筆記:dummy 走到 left 的前一個節點,再把後面的節點一個一個搬到它後面,搬 right - left 次
LeetCode 165: Compare Version Numbers
·1 分鐘
LeetCode
Medium
Two-Pointers
String
LeetCode 165 解題筆記:用 . 切開後轉成整數逐段比較,比較短的版本缺的段當作 0