162. Find Peak Element - Medium 前往題目 想法 Binary search,只要注意左右邊界外的數字都比界內數字小 思路 一般的Binary search 每次選中mid看其左右邊相鄰數字 如果左邊比較大那他就有可能是peak,所以往左邊繼續找,因為當前數字比他小;反之右邊也是如此道理 左右邊都沒有比較大的時候就是找到peak了,邊界也是一樣,因為界外數字一定比較小 Code這題想得有點複雜,其實規律就是哪邊有比較大的就往 2024-09-13 Leetcode > Medium #Leetcode #心得 #Array #Binary Search
34. Find First and Last Position of Element in Sorted Array - Medium 前往題目 想法 用binary search搜尋兩次 但我沒想到可以怎麼變化,因為一般的二元搜索沒辦法 思路 兩次二元搜索,第一次找第一個,第二次找最後一個 每次找到target不要急著回傳,找first就往左邊繼續找,直到l == r;找last就往右邊繼續找,一樣直到l == r 所以不會錯過第一個和最後一個 Code網友解答 class Solution { publ 2024-09-12 Leetcode > Medium #Leetcode #心得 #Array #Binary Search
3281. Maximize Score of Numbers in Ranges - Medium 前往題目 想法 毫無頭緒,只覺得應該要用binary search來做,但無從下手 思路即便思考許久,也參考網路上解答,但還是沒有完全理解這題 Binary serach搜尋最終的結果 下為0,上為Integer.MAX_VALUE 每次都檢查是否這個score可以是答案(這裡檢查的部分就是我無法完全懂的地方) 每次都檢查前數 + score是否大於當前數字 + d,如果大於就代表這個sco 2024-09-12 Leetcode > Medium #Leetcode #心得 #Binary Search
1011. Capacity To Ship Packages Within D Days - Medium 前往題目 想法 Binary Search,通常找min或max的都可以先往這方面想 思路 算出所有貨物總和,這樣就知道最大需要多重的運輸能力 從一半的可能重量開始看是否可以在期限內運送 如果可以就嘗試減少重量再看看是否可以 如果不行就嘗試增加重量 Code網友解答 class Solution { public int shipWithinDays(int[] weigh 2024-09-09 Leetcode > Medium #Leetcode #心得 #Array #Binary Search
xbox series手把蘑菇頭飄移修復方法 最近用了三年的xbox series的手把右蘑菇開始飄移,不動它偶爾就會自己慢慢往上,剛好又在打黑神話,常常跑一跑視角就沒了,不考慮焊接換微動,因為不像滑鼠那樣拆開來就可以整個板子拿出來,手把結構較為緊密複雜,網路上都有很多影片參考,反而有個民間小偏方讓我的手把這兩天都恢復正常,再次秀逗的話我再刪文🤣 我是參考這篇ptt網友的文章,大致步驟如下 拆開蓋子後,把蘑菇頭拿掉 如果是Y軸(上下)出問 2024-09-07 遊戲 > 手把修復 #xbox #controller #遊戲 #手把修復 #蘑菇頭飄移
441. Arranging Coins - Easy 前往題目 想法 循環扣除每行所需硬幣 思路 同想法 這題還能用binary search做,但反而就變困難了 CodeNeetcode大大用BS做的 class Solution { public int arrangeCoins(int n) { int i = 1; // row // Until used 2024-09-04 Leetcode > Easy #Leetcode #心得 #Math #Binary Search
341. Flatten Nested List Iterator 前往題目 想法 Queue or Stack 思路 用dfs,遇到數字就加入queue,遇到list就再呼叫dfs Code /** * // This is the interface that allows for creating nested lists. * // You should not implement it, or speculate about its impl 2024-08-29 Leetcode > Medium #Leetcode #心得 #Stack #Queue #Depth-First Search #Tree #Design #Iterator
456. 132 Pattern - Medium 前往題目 想法 stack 思路挺難理解的一題,巧妙的運用monotonic stack 大致上是:利用monotonic stack,使推進去的數字遞減,只要當前數字比stack的頂端小,就pop,先當作132的2,因為3是當前數字,而下一個循環一開始就看當前是否比2還要小,如果是,就找到了 Code✅ 99.35% Stack & Left Approach & Binar 2024-08-28 Leetcode > Medium #Leetcode #心得 #Stack #Array #Monotonic Stack #Binary Search #Ordered Set
1209. Remove All Adjacent Duplicates in String II - Medium 前往題目 想法 Stack 思路 用Stack儲存每個字母和當前有幾個相鄰且相同的 達到k就pop 沒達到就計數+1然後繼續 相鄰的不是同字母計數=1 回傳結果 Code看了Hint自己寫出來了,insert耗費資源,用append最後再reverse就好 class Solution { public String removeDuplicates(String s, i 2024-08-21 Leetcode > Medium #Leetcode #心得 #Stack #String
402. Remove K Digits - Medium 前往題目 想法 Stack 思路Monotonic Stack,由小到大 疊代整個string 遇到當前數字比前一個小就彈出上一個數字(最多彈出k個) 還有k剩餘就彈出最後面的數字 回傳結果 要想到monotonic stack是這題的解法還真的有難度 Code class Solution { public String removeKdigits(String nu 2024-08-20 Leetcode > Medium #Leetcode #心得 #Stack #String #Monotonic Stack #Greedy