↓快轉到主要內容

String

LeetCode 1016: Binary String With Substrings Representing 1 To N
·2 分鐘
LeetCode Medium Sliding-Window String Bit-Manipulation Hash-Table
LeetCode 1016 解題筆記:s 最多 1000 個字元,長度固定時的子字串數量有限,n 太大一定是 False;從 n 往下檢查會很快失敗,或從每個起點往右最多延伸 30 位收集所有 <= n 的值
LeetCode 3794: Reverse String Prefix
·1 分鐘
LeetCode Easy Two-Pointers String
LeetCode 3794 解題筆記:切片一行解決;手寫雙指針時要先把字串轉成 list
LeetCode 1888: Minimum Number of Flips to Make the Binary String Alternating
·1 分鐘
LeetCode Medium Sliding-Window String Dynamic-Programming
LeetCode 1888 解題筆記:把移到尾巴的操作變成在 s + s 上滑動長度 n 的視窗;視窗跟 0101… 不同的數量是 diff,跟 1010… 不同的就是 n - diff
LeetCode 3694: Distinct Points Reachable After Substring Removal
·1 分鐘
LeetCode Medium Sliding-Window Prefix-Sum Hash-Table String
LeetCode 3694 解題筆記:終點 = 全部的位移 − 被刪掉那段的位移;用長度 k 的視窗維護那段的位移,把每個終點放進 set
LeetCode 3750: Minimum Number of Flips to Reverse Binary String
·1 分鐘
LeetCode Easy Two-Pointers Bit-Manipulation String
LeetCode 3750 解題筆記:把二進位字串跟它的反轉逐位比較,不同的位數就是答案
LeetCode 3707: Equal Score Substrings
·1 分鐘
LeetCode Easy Prefix-Sum String
LeetCode 3707 解題筆記:邊掃邊累加左邊的分數,右邊是總分減左邊;分數是字母順序 1 到 26,不是 ord
LeetCode 394: Decode String
·1 分鐘
LeetCode Medium Stack String Recursion
LeetCode 394 解題筆記:遇到 [ 就把目前的字串和次數存進 stack,遇到 ] 再取出組合;次數可能有好幾位
LeetCode 3703: Remove K-Balanced Substrings
·2 分鐘
LeetCode Medium Stack String Simulation
LeetCode 3703 解題筆記:反覆 replace 是 O(n^2);stack 存 (字元, 連續個數),湊到 k 個 ( 加 k 個 ) 就整段消掉
LeetCode 2131: Longest Palindrome by Concatenating Two Letter Words
·1 分鐘
LeetCode Medium Greedy Hash-Table String Counting
LeetCode 2131 解題筆記:每個字跟它的反轉配成一對放兩邊;本身是回文的字也能兩兩配對,只有剩下的一個能放正中間
LeetCode 2264: Largest 3-Same-Digit Number in String
·1 分鐘
LeetCode Easy String
LeetCode 2264 解題筆記:候選只有 “000” 到 “999” 十個,從 “999” 往下檢查有沒有在字串裡
LeetCode 22: Generate Parentheses
·1 分鐘
LeetCode Daily Medium String Backtracking Recursion Combinatorics Parentheses
使用回溯法生成所有有效的括號組合
LeetCode 20: Valid Parentheses
·1 分鐘
LeetCode Daily Easy String Stack Data-Structures Parentheses Validation
使用堆疊解決有效括號問題