LeetCode
LeetCode 482: License Key Formatting
·1 分鐘
LeetCode
Easy
String
LeetCode 482 解題筆記:先去掉所有 - 並轉大寫,再從尾巴每 k 個切一段,最前面那段可以比較短
LeetCode 476: Number Complement
·1 分鐘
LeetCode
Easy
Bit-Manipulation
LeetCode 476 解題筆記:做一個跟 num 一樣長、全部是 1 的遮罩,num ^ mask 就是補數
LeetCode 463: Island Perimeter
·1 分鐘
LeetCode
Easy
Array
Depth-First-Search
Breadth-First-Search
Matrix
LeetCode 463 解題筆記:每格陸地貢獻 4 條邊,每跟上方或左方的陸地相鄰一次就少 2 條
LeetCode 461: Hamming Distance
·1 分鐘
LeetCode
Easy
Bit-Manipulation
LeetCode 461 解題筆記:x ^ y 的每個 1 就是一個不同的位元,數 1 的個數
LeetCode 459: Repeated Substring Pattern
·1 分鐘
LeetCode
Easy
String
String-Matching
Z-Algorithm
Knuth-Morris-Pratt-Algorithm
LeetCode 459 解題筆記:s 由某個子字串重複組成,等價於 s 出現在 (s + s) 去掉頭尾字元之後的字串裡
LeetCode 455: Assign Cookies
·1 分鐘
LeetCode
Easy
Array
Two-Pointers
Greedy
Sorting
LeetCode 455 解題筆記:小孩和餅乾都排序,用最小的、夠大的餅乾滿足最小的小孩;兩個指標各走一次
LeetCode 448: Find All Numbers Disappeared in an Array
·1 分鐘
LeetCode
Easy
Array
Hash-Table
LeetCode 448 解題筆記:把陣列本身當雜湊表,看到 x 就把 nums[x - 1] 標成負數,最後還是正數的位置就是沒出現的數
LeetCode 441: Arranging Coins
·1 分鐘
LeetCode
Easy
Math
Binary-Search
LeetCode 441 解題筆記:找最大的 k 讓 k(k + 1) / 2 <= n;二分時往右更新要寫 l = mid + 1,不然會卡住
LeetCode 434: Number of Segments in a String
·1 分鐘
LeetCode
Easy
String
LeetCode 434 解題筆記:split() 不帶參數會忽略多餘的空白,切出來的數量就是答案
LeetCode 415: Add Strings
·1 分鐘
LeetCode
Easy
Math
String
Simulation
LeetCode 415 解題筆記:兩個指標從尾巴往前逐位相加,記錄進位,迴圈結束後還有進位要補上
LeetCode 414: Third Maximum Number
·1 分鐘
LeetCode
Easy
Array
Sorting
LeetCode 414 解題筆記:記錄三個不同的最大值,重複的數跳過;不到三個不同的數就回傳最大值
LeetCode 1869: Longer Contiguous Segments of Ones than Zeros
·1 分鐘
LeetCode
Easy
String
LeetCode 1869 解題筆記:分別找出最長的連續 1 和最長的連續 0,比較大小;用 split 一行就能做