02.25 時間緊任務急,如何在LeetCode刷題

時間緊任務急,如何在LeetCode刷題

以下內容適合新生小白,老鳥請繼續刷你的題吧

很多公司都會面試算法題,然而很多小夥伴平時工作很忙,沒有時間或沒有養成刷題的習慣,面試準備週期時間也很緊張,沒辦法刷完LeetCode,往往慌慌張張刷了一些題,然而其實效果也不好。

當然這裡還是建議大家平時多看看算法題,畢竟程序=數據結構+算法,對你以後的編程工作來說是大有好處的。如果基於時間緊任務急的前提該怎麼刷題呢?以下提供一些個人的思路:

1 題目很多,不要從頭到尾全刷(你的時間恐怕也不夠)

時間緊任務急,如何在LeetCode刷題

如上圖,題目是有分類,有套路的,而大的分類無非數據結構和算法兩類,雖然LeetCode上面有1000多道題了。然而所有題型目前來看是有邊界的。而算法是有套路的!這些套路仍然我們提到過的算法和數據結構,所以你可以按標籤刷,但實際上就算按標籤刷題目還是挺多的,如何更高效的刷題呢?

在git 上(https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E7%9B%AE%E5%BD%95.md)有前人為我們總結了一個清單,這個清單可以幫助你節省很多時間,你不需要再去找題目,再去花時間想要去做哪些類型的題目(而每個類型也有很多題,多的也有幾百道),這個清單幫你從1000多道題中篩選出200多道 經典的題、面試中經常被提到的題。每個類型都會有一些基本描述,告訴你一些關於這個類型的基本知識。個人覺得還是很好的。

2 刷題數量

一天1、2題,隔三差五的刷恐怕不行。你需要每天、大量的、集中的刷題。你的面試準備週期你心裡有數。另外最好定時定點的刷,有助於養成一個習慣。人是有遺忘曲線的,如果你隔一個星期不刷可能就會忘記之前刷過的一些題了。可以給自己設定一個期限和目標,什麼時間內刷多少題,給自己一點點壓力。



3 刷題順序

建議從易到難,先來easy的,然後加大難度。

4 要不要看答案

有些小夥伴刷題的時候比較抗拒看答案,覺得自己做不出來不服氣,一定要自己做出來,看答案就輸了,看答案覺得自己很笨、很沮喪什麼的。首先這些小夥伴可能比較要強,其實是好事,但要注意我們刷題的核心目的是什麼,就像上文第1點說的,題型題目是有邊界的,我們通過大量的刷題並不是要達到一個非常高的算法工程師的水平,而是通過刷題 “學會套路,應對套路”,就像應試教育一樣,題海戰術嘛。你上學的時候有沒有被老師帶著“刷過卷子”

這裡的建議是:

  • 好好分析題目,弄懂題目
  • 花幾分鐘時間,自己想解法
  • 如果幾分鐘搞不定,可以看答案了(幾分鐘想不到,幾小時也有可能一樣,沒必要浪費那麼多時間了)
  • 答案能看懂,理解了,不看答案自己再解一遍,有必要的話做筆記(不建議用紙筆,用ipad會比較高效些,方便整理和查閱)
  • 看了答案還不懂,網上對每個題都有很多前人的優秀題解,再好好參考下,直到看懂了。

隨著你刷的題越來越多,你就會越來越上手,自然而然就沒有那麼依賴答案

5 刷題不能死記硬背

背是背不完的,一道題可以改變的方法有太多,重要的是要理解題,知道題背後的知識點,這樣才可以舉一反三,知道這些“套路”後,遇到相似題才能自己解出來。

6 學會利用資源

現在網絡上有很多優秀免費的資源,大家要學會利用,不然有時候答案都看不懂的時候怎麼辦?

這裡分享一些好的資源:

時間緊任務急,如何在LeetCode刷題

這個公眾號寫了很多文章,主要都是算法類的總結和刷題套路,比如動態規劃講的特別好。

youtube: Back to Back SWE

https://www.youtube.com/channel/UCmJz2DV1a3yfgrR7GqRtUUA

時間緊任務急,如何在LeetCode刷題

特點:黑人小哥,講的生動有趣,不會覺得無聊。

B站:

綿羊教授

https://space.bilibili.com/354892788?from=search&seid=6549052393519048731

綿羊教授 他的每道題有兩個版本,用中文說一遍,再說英文說一遍,如果你準備外企的面試,就可以多看看英文的版本

小Q刷題

https://space.bilibili.com/149758?from=search&seid=1097042333993831009

特點:題目刷的全

花花醬

https://space.bilibili.com/9880352?from=search&seid=9395065874802859629

特點:題目刷的全(快把LeetCode全刷完了)

github:

https://github.com/MisterBooo/LeetCodeAnimation

特點:會把題目用動畫的方式演示出來

時間緊任務急,如何在LeetCode刷題

最後:面試官考你一道題無非是想通過這道題看看你了不瞭解它背後的原理知識。這些知識就是看你知不知道某一個算法或者夠不夠了解某一個數據結構。

祝大家刷題順利!


分享到:


相關文章: