大家都知道,現在網際網路公司面試,只要是研發崗位,基本是跑不了演算法題伺候的,所以大家準備校招、社招,或者平時空閒的時候,都可以刷刷 LeetCode,保持手感
之前刷題,一直覺得漫無目的的刷,效率很低,後來發現了一位 BAT 大佬霜神(halfrost@github)寫的 LeetCode 刷題筆記。
我研讀後,感覺發現了寶藏!刷 LeetCode 中等難度的題目基本不會被卡住了,忍不住給大家也安利一波!
(文末有這本刷題筆記的獲取方式)
這本書題目的程式碼都已經 beats 100% 了。沒有 beats 100% 題解就沒有放到本書中了。
有可能讀者會問,為何要追求 beats 100%?
霜神認為最佳化到 beats 100% 才算是把這題做出感覺了。
有好幾道 Hard 題,筆者都用暴力解法 AC 了,然後只 beats 了 5%。
這題就如同沒做一樣。而且面試中 如果給了這樣的答案,面試官也不會滿意,“還有沒有更優解?”。
如果透過自己的思考能給出更優解, 面試官會更滿意一些。
看完這本書內講解的常見資料結構和演算法,在 Leetcode 上遇到中等難度的題基本不會卡頓了。
這本書包含了 LeetCode Online Judge 所有題目的答案,所有的程式碼實現是非常優雅且執行效率極高的。
不管你是 Java、C++、Go都可以學習演算法思想,編碼規範良好,適合刷題的同學反覆學習,揣摩其中的框架思維。
這是一本非常用心的刷題類書籍,全書總共 1200 頁,分程式設計技巧、線性表、字串、棧佇列、樹、排序、查詢、BFS、DFS、貪心、動態規劃等。
可以感受下書的排版風格和目錄:
每一個章節都先講解框架思維,然後挑選非常典型的十幾道 LeetCode 題進行實戰講解:
不僅排版非常精美,內容也十分充實,每一題都是細緻的講解,有時候還會配上圖片,就怕你搞不懂!
如果是學習演算法、資料結構、或者是刷題找工作的小夥伴,一定不要錯過啦!