算法面試題《精選題目+題解分類彙總》

從去年年底開始想準備找實習,於是就開始懶散的複習。

大二學過數據結構,對基本的算法理論和數據結構有過了解,但是感覺又基本都交還給老師了
於是開始零散的複習,在leetcode上按照通過率由高到低開始刷,發現自己連通過率最高的幾個題都喫力,幾乎每個題都要去看題解然後慢慢消化
刷了十多個題就放棄了,這種盲目的玩法真的太傷自信心了

於是就去看書,先複習下基礎,當然就盲目看書還是沒學到什麼東西

之後又看了慕課網的bobo老師的算法課程,感覺時間不多了就一口氣的看完,邊看邊敲,感覺自己有點進步了,leetcode總共通過了80多個題了

後來,又嘗試了去刷《劍指offer》的套題,憑藉着題解刷到了40多個題,其他的題看着題解都感覺喫力了,於是又放棄了

過年期間懈怠了一下,然後再去做之前通過了的題,感覺還是不會做,原來之前會做都是因爲有視頻和參考題解的作用

這時才意識到自己的刷題方法有問題只刷一遍是不對的,沒有體系的刷是不對的

於是又回到最基礎的知識點,選擇按類型的反覆刷,不強求每個類型刷多少個題,但一定要掌握知識點,每個題至少做五遍,保證不看題解和原來的代碼自己可以憑藉理解一步步寫出代碼

於是,我就開始高頻考題優質代碼的整理和刷題,參考《極客時間-算法訓練營》的題目和cyc2018大佬的複習筆記中的高頻題目開始整理自己的複習筆記,筆記內容都放在我的專欄《leetcode精選題集》
我刷題的步驟可以總結如下:

  1. 複習某個知識點理論知識
  2. 尋找某個知識點相關的高頻題(5-10個)
  3. 開始刷題,先自己想解題思路
  4. 開始看leetcode中文站與該知識點相關的題解,寫出第一版代碼
  5. leetcode全球站查看高贊題解(看全球站只需要將中文站的網址leetcode-cn.com改爲leetcode.com,其他的路徑都是一致的)
  6. 然後寫出自己覺得最容易理解且效率較優的代碼
  7. 每個知識點刷兩三個題之後就先不要看題解,自己先做,做不出來再看題解
  8. 將每個知識點對應的題目和自己能很容易理解的代碼整理成文檔,空閒時間可以看一看
  9. 然後定期的反覆刷專題,每次針對同一個知識點進行刷題

針對題目的選擇較爲優化的代碼,大家可以參考下我的專欄,我的代碼全部是由Java編寫的,且代碼都是學習了大量題解後整理的較優的,如果有些題找不到較好的Java題解可以作爲參考。

我對刷算法題的認知就:聽再說的老師講課不如自己去刷自己去理解,前前後後聽了3套網上的面試算法題課程,老師都講的特別好,但是自己動手較少,一寫代碼就不會,所以和我曾經一樣算法一寫就不會的可以嘗試着按專題來逐個攻破

我刷題的目錄整理如下,想體系化刷題的同學可以參考這個路徑(標題鏈接我的專題文章,題目鏈接leetcode中文站題目)


我的專欄《leetcode精選題集》會一直更新,有好的建議歡迎大家在下方留言

更新時間:2020年3月31日09:43:33

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章