Two Pointers

19. Remove Nth Node From End of List

19. Remove Nth Node From End of List 這一題我的第一個想法是我先走一趟算出整個 Linked

1095. Find in Mountain Array

1095. Find in Mountain Array

876. Middle of the Linked List

876. Middle of the Linked List # Definition for singly-linked list.

701. Insert into a Binary Search Tree

701. Insert into a Binary Search Tree 如果是要在一個 BST 中插入一個點,

83. Remove Duplicates from Sorted List

83. Remove Duplicates from Sorted List 這個題目是快慢指針的題目,慢指針指向的是當前答案的最後一個節點,如果此時快指針指向的節點的值和慢指針指向節點的值相同的時候,代表還有重複值的節點,

1248. Count Number of Nice Subarrays

1248. Count Number of Nice Subarrays 這題目要求我們找到數組中 總和為 k 的奇數數目

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. 我們需要想的是窗口增大的時候,需要更新哪些資訊?

283. Move Zeroes

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

209. Minimum Size Subarray Sum

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