Gary Lai

536. Construct Binary Tree from String

536. Construct Binary Tree from String 做這題之前可以先完成 606. Construct String

3. Longest Substring Without Repeating Characters

3. Longest Substring Without Repeating Characters 這一題其實是可以透過暴力解法想辦法算出來的,那就是窮舉出所有的子字串,並且檢查每一個子字串有沒有重複的字元。時間複雜度約為

438. Find All Anagrams in a String

483. Find All Anagrams in a String 1. 我們需要想的是窗口增大的時候,需要更新哪些資訊?

208. Implement Trie Prefix Tree

208. Implement Trie (Prefix Tree) class Trie: def __init__(self)

283. Move Zeroes

283. Move Zeroes 這個題目有點陷阱,題目要求要把零搬到最後,不過用這個角度去想的話,題目真的不好想,比較好做的做法需要有反面的想法: 把所有的零搬到後面 == 把所有非零的數字搬到前面

209. Minimum Size Subarray Sum

209. Minimum Size Subarray Sum 題目有給目標值,要找尋的子陣列是子陣列總和大於或等於目標值即可。 所以滑動窗口的題目,我們只要找到子陣列的總和開始大於或等於目標的時候,就可以開始縮減窗口,

424. Longest Repeating Character Replacement

424. Longest Repeating Character Replacement class Solution: def characterReplacement(self,

11. Container With Most Water

11. Container With Most Water 解題的核心想法是有一句俗諺:水桶的最大容量決定於最矮的一邊。 題目給出的正是水桶高度,只是俗諺中的水桶,底部的面積都一樣,

76. Minimum Window Substring

76. Minimum Window Substring 滑動窗口的經典題目,題目要求要找到最短的子字串,裡面包含了 t 字串有的字元。 1.

27. Remove Element

27. Remove Element 要從兩個方向看 1. 如果現在最右邊的指針,當下的值和 val 相同,想辦法往左邊移,