<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從小白到 6 個 offer,我究竟是怎么刷題的?

          共 2361字,需瀏覽 5分鐘

           ·

          2021-03-31 13:31

          齊姐的一篇原創(chuàng)好文。送給正在刷題的小伙伴


          今天和大家系統(tǒng)分享下我去年轉行時的一個刷題過程和方法,希望對你有所幫助。

          首先介紹下我的編程基礎,我學的是金融工程專業(yè),碩士時學過 C++ 的課,這也是我的編程入門課(但我個人非常不推薦用 C++ 入門)。這門課的重點是 C++ 在金融領域的應用,比如給 Option 定價,基本不涉及算法和數(shù)據結構。

          所以我是有一定編程基礎的,但是對算法和數(shù)據結構是小白,也不懂空間復雜度和時間復雜度為何物。

          另外說明一下我的時間,我是在工作后才開始刷題,所以是晚上和周末來刷,時間比較緊張,如果是學生的話在我的基礎上要多刷一些喲。

          下面上干貨。


          我把我的刷題過程分為 3 階段。

          第一階段:打基礎

          時間是 3 個月,做了 128 道題,平均每天 1-2 題。

          這一階段刷題對我來說,是一個學習數(shù)據結構和算法的過程。

          所以如果是科班的同學這一步就可以跳過了。

          經常有同學問這個刷題順序問題:

          我認為在不同階段是不一樣的,那么第一階段我是按照算法類型來刷,每個類型大概花 1-2 周的時間。

          那到底先刷哪個類型呢?

          刷 DP?

          這不是勸退么?

          這里對于小白來說,合理的學習曲線是非常重要的,否則一上來數(shù)據結構都不清楚去做難的算法題容易受打擊。

          那么怎樣才是合理的學習曲線呢?

          我說的不算,其他人的也只是他個人經驗,而應該是看名校的口碑課程是怎么安排的,看教授為你制定的學習計劃。

          MIT 6.006 Introduction to Algorithms

          比如第一周,我們去刷排序算法。

          那在這個具體的分類下,題目按什么順序來做呢?

          把題目按照頻率從高到低的順序來做,也就是出現(xiàn)頻率高,??嫉奈覀兿茸觥?/p>

          那對于每一道題應該怎么做呢?

          首先我會先自己思考 5 分鐘,那如果過了 5 分鐘還沒有任何思路,就不必強求了,看答案吧。

          Leetcode 有一個討論區(qū),里面有非常多的大神給的解答,重點不是看他的代碼,而是看他怎么想的,怎么分析的這個問題。

          如果還沒有理解,那我會去搜一下視頻講解。

          這里推薦一個小哥,也是我唯一推薦的 Leetcode 視頻講解:

          國內的小伙伴可能不太方便看這個,大家在留言區(qū)說下你推薦的視頻講解吧~

          對于在北美求職的同學,這小哥的英文對面試也會非常有幫助。

          這樣就把一個刷題計劃落實到了第一個分類、第一周、第一天該做什么。

          但是做完題不是就萬事大吉了,最重要的一步是需要吸收、內化成自己的。

          我喜歡的是寫“解題報告”:

          <<< 左右滑動見更多 >>>

          把這道題考查了哪些知識點,正確的思路是怎樣的,別人是怎么想到的,代碼是怎么寫的,代碼有什么小技巧,都記錄下來。

          這個是跟我當時一起刷題的小伙伴學的,并且我們互相講題,這樣效果更好。所以這里強烈建議大家組隊刷題,互相監(jiān)督提高。

          那么周末的時候復習和總結,我一般會做:

          1. 重新做一遍本周做過的題目,不是背答案,而是自己再去想一遍;
          2. 再做幾道新題;
          3. 看書,建立更系統(tǒng)的知識體系。

          這里看書不是指把書從頭看到尾,而是抓住重點章節(jié),比如排序算法,那就參考 MIT 教授給你畫的重點,只看《算法導論》的這些章節(jié),這才是偷懶的正確打開方式啊。

          不過,如果你的時間很充足,當然是系統(tǒng)的看書、上課更好了,會有更加平緩的學習曲線。

          這樣 3 個月后我把基本的算法類型都刷過了,數(shù)據結構也都深入理解了,剛開始做的題目也差不多都忘了,那么開始第二階段。

          第二階段:拓展思路

          這一階段我花了 1 個半月的時間,復習了第一階段的題目,并做了 100 道新題。

          • 平時工作日的時候,我會去復習第一階段的題目,并且用英文把它講出來,畢竟我要參加英文面試,如果是國內面試的話中文就好了,然后你就會發(fā)現(xiàn),自己是不會說話的,不信你錄音聽一聽。
          • 周末時,我會限定時間去做新題,模擬考試或者面試的感覺,在有時間壓力下去思考,否則給充足的時間大家都能做出來。

          這一階段我是記錄在 Excel 里:

          第二階段做的差不多的時候,就把 Linkedin 設置為 “open to market“,就會有獵頭找我了,那一旦拿到面試,就到了第三階段。

          第三階段:面試

          這一階段的重點是找到面試的狀態(tài)和感覺,并且快速寫出代碼。

          那么我的方法是

          • Mock interview
          • 參加 Leetcode contest

          這一階段的刷題順序我會按公司分類來刷,Leetcode 上有 company tag,如果是國內的小伙伴可以參考這個 Github: https://github.com/afatcoder/LeetcodeTop,列舉了國內幾大互聯(lián)網公司常考的面試題,那么就會更有針對性的準備面試。

          這一階段又陸陸續(xù)續(xù)做了 100 題,同時面完了所有的面試,就收工啦。


          最后呢,再送個大家 3 個很好用的 Github 資料:

          1. 按國內公司分類:https://github.com/afatcoder/LeetcodeTop
          2. 按照算法類型分類:https://github.com/wisdompeak/LeetCode
          3. Leetcode 1-919 題的解析:https://github.com/grandyang/leetcode

          另外還有一份精選的刷題筆記也想送給大家,之前在視頻號里推薦過了,還沒有領的小伙伴在公眾號后臺回復「筆記」就有啦。


          那以上就是我刷題經驗的整個過程啦,如果還有任何問題歡迎留言或者私信告訴我,如果想加入自習室和大家一起刷題的也歡迎關注我。

          齊姐,紐約程序媛,點擊下方視頻即可了解齊姐的故事~

          瀏覽 27
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人久久久久久无码 | 做爱完整视频网址大全免费 | 欧美福利 | 国产一级黄片 | 好想操骚逼无码视频 |