LeetCode 刷題紀錄
10 min readApr 2, 2020
今天決定開始每天刷 5 題 LeetCode 的小計畫,為期至少一個月。主要使用的語言是 Python,每天會把完成的題目 po 上來紀錄,給自己一點壓力堅持下去。
發現 Medium 設計不適合一天一篇,會太佔版面,所以全部移駕到同一篇,一樣每天都會更新。
- Two Sum
- 用 hash 記錄位置
- use hash to record position - Add Two Numbers
- 走訪 Linked List 時考慮進位。
- consider carry while traversing linked list - Longest Substring Without Repeating Characters
- 用 Sliding Window 比較長度,用 Hash Table 紀錄位置
- Use sliding window to compare length, use hash table to record position. - Longest Palindromic Substring
- 重點是 run time,所以從中間位置開始找
- Note: Time Complexity. Search from the middle. - Reverse Integer
- 重點是 run time,所以從中間位置開始找
- Note: Time Complexity. Search from the middle. - String to Integer (atoi)
- 用 regular expression 找出首次出現數字。
- use regular expression to get first numbers. - Palindrome Number
- 前後 pointer 走訪。
- first and last pointer traversal. - Container With Most Water
- 用左右 pointer 記錄,並往更佳的方向移動。
- Use left and right pointer track position and move if there has better choice. - Integer to Roman
- greedy approach:用 dictionary 列出所有可能。
- greedy approach: use dictionary to list all possibilities. - 3Sum
- 固定一數,用左右 pointer 找出目標總和。
- Fix one number and use left and right pointer to find out target sum.