初來乍到,挑easy寫才不會身心俱疲。
寫點筆記和思路給自己或其它需要的人。
不過就只是個隨筆而已。
https://leetcode.com/problemset/all/
LeetCode 2.
就是純粹的LinkedList, 算是很初階的練習,想溫習LinkedList就做這道題。
寫這題的時候有點心靈受創,原來我的指標這麼爛阿...
光是node 和 node* 的使用我都昏了。
沒什麼訣竅,指標和list的用法而已。
LeetCode 3.
Sliding Window.
當初在寫這到題時,不知道什麼是Sliding Window, 不過有做出類似的作法,但runtime error.
是因為我每次有重複時就重算了一遍,但他要求的是最大值,所以Window不用關小,但是雖然直覺上我們會想從窗戶最右端開始做,但這樣會少記到一些,所以還是得一個一個踩過。
照著移動時也要注意重複的判斷,因為窗戶沒有關小。
map的操作可以熟悉一下,基本上用到find的題目都可以嘗試用map.
LeetCode 7.
重點在Boundary的判斷。
以前就常有這個困擾:到底要怎麼判斷有沒有overflow?
後來才發現網路上簡單的方法,
乘除的話先和INT_MAX OR INT_MIN做除乘比較
加減的話用INT_MAX - a < b 來判斷,最小值也一樣,但記得最小值不能再減,要自己轉換判斷方式。
會過這一次,之後遇到Overflow題目就不用再苦惱了。
這週到此。
全站熱搜
留言列表