LeetCode 刷題紀錄

Ching Tien
10 min readApr 2, 2020

今天決定開始每天刷 5 題 LeetCode 的小計畫,為期至少一個月。主要使用的語言是 Python,每天會把完成的題目 po 上來紀錄,給自己一點壓力堅持下去。

發現 Medium 設計不適合一天一篇,會太佔版面,所以全部移駕到同一篇,一樣每天都會更新。

  1. Two Sum
    - 用 hash 記錄位置
    - use hash to record position
  2. Add Two Numbers
    - 走訪 Linked List 時考慮進位。
    - consider carry while traversing linked list
  3. Longest Substring Without Repeating Characters
    - 用 Sliding Window 比較長度,用 Hash Table 紀錄位置
    - Use sliding window to compare length, use hash table to record position.
  4. Longest Palindromic Substring
    - 重點是 run time,所以從中間位置開始找
    - Note: Time Complexity. Search from the middle.
  5. Reverse Integer
    - 重點是 run time,所以從中間位置開始找
    - Note: Time Complexity. Search from the middle.
  6. String to Integer (atoi)
    - 用 regular expression 找出首次出現數字。
    - use regular expression to get first numbers.
  7. Palindrome Number
    - 前後 pointer 走訪。
    - first and last pointer traversal.
  8. Container With Most Water
    - 用左右 pointer 記錄,並往更佳的方向移動。
    - Use left and right pointer track position and move if there has better choice.
  9. Integer to Roman
    - greedy approach:用 dictionary 列出所有可能。
    - greedy approach: use dictionary to list all possibilities.
  10. 3Sum
    - 固定一數,用左右 pointer 找出目標總和。
    - Fix one number and use left and right pointer to find out target sum.

--

--

Ching Tien
Ching Tien

Written by Ching Tien

認知心理學及數據策略背景,有管理顧問、遊戲業、金融科技、房地產科技及新創圈的經驗。著迷於行為分析的資料科學家及產品經理。