半月記2018.11.17
阿新 • • 發佈:2018-11-19
半月記2018.11.17
這半個月在工作上沒有百分之百投入,所以自己的時間多一些,但是效率並不高,後面下一版本的工作會展開,自己的時間就少一些,後面要強迫自己高效。
原計劃
原本打算年前,即十、十一、十二和一月份四個月集中火力幹資料結構與演算法,只做easy和medium難度的題目,每天三題,年前可完成360題到400題左右。年後三月中旬以前完成100題,這樣總題數目大概在450左右。
leetcode現在有933題,hard難度的約佔15%,鎖定的題目也有大概18%,所以還剩650道左右。
除刷題外,作業系統、網路也有很多要看。另外就是最近想試一試big data相關的東西,做底層的系統軟體風險高、難度大,所以想接觸下這塊。所以刷題的進度要加快了,年前必須達到450道左右。
現狀
刷題大概有一個月了,現在總共刷了88到題,主要集中在array和link list。正確率不高,每到題只是按照自己能想到的最好解法來解決,沒有追求極致的效率。
linked list
問題比較少,總共34到題,以完成19道,基本是一次ac。
有下列幾道題是需要注意的:
- 逆序,這個屬於基本功,很多問題都要在這個題目的基礎上完成;
- 判斷是否有環,以及其升級版,判斷有環,並且給出位置(沒有做出來);
- O(nlogn) 原地排序(也沒有作出來);
- deep copy linked list(沒做出來);
還有easy題目沒有做,如果有關鍵的再補充到這裡。作linked list題目,有幾個小技巧:
- dummy node,避免head的特殊處理;
- 快慢指標:在判斷是否有環,刪除最後第k個node這類題目中很有用;
array
這塊需要很大篇幅總結,明天再行補充。
下一步
接下來,計劃把queue、stack和部分hash table的題目作掉。希望未來半個月能突破80道。