Dynamic Programming

746. Min Cost Climbing Stairs

746. Min Cost Climbing Stairs class Solution: def minCostClimbingStairs(self,

5. Longest Palindromic Substring

5. Longest Palindromic Substring 這一題是我們要找出子字串中的最長的回文,其實最好從暴力解法開始學習起,前面的題目已經重複提過了好多次的回文的性質,這裡就用暴力法先來思考以下。 暴力法 (TLE)

121. Best Time to Buy and Sell Stock

121. Best Time to Buy and Sell Stock 這個題目算是面試的高頻題目,因為一個題目可以不斷的延伸,

139. Word Break

139. Word Break 這個題目的要求是給定一個字串與一個陣列,陣列裡面裡面有多個單字,目標是要回答,是否可以透過任意組合陣列裡面的單字,且陣列裡面的每個單字都是可以重複使用,可以拼湊出題目給的字串。 題目的要求很清楚,

188. Best Time to Buy and Sell Stock IV

188. Best Time to Buy and Sell Stock IV 自頂向下

140. Word Break II

140. Word Break II 💡請先參考 139. Word Break 在 139.

322. Coin Change

322. Coin Change 題目會給定兩樣東西,一樣是總金額(amount),一樣是硬幣的面額(coins),題目要求我們找出透過不同的面額組合,找出使用最少枚硬幣的解法。

518. Coin Change 2

518. Coin Change 2 這個題目是 322 Coin Change 的進階題目,該題是個動態規劃的問題,

448. Find All Numbers Disappeared in an Array

448. Find All Numbers Disappeared in an Array 這個題目的簡單做法是排序後再找,但是這樣的做法通常都是會被問到提供更好的解法。

651. 4 Keys Keyboard

651. 4 Keys Keyboard 這個題目滿有趣的,為了幫助大家對這個題目有更深的印象,我分享一個小故事,我在剛開始學寫程式的時候,是從 HTML