【文組的學code之路 4】Python新手,刷leetcode要幹嘛?

by Kelly Guo
1,565 views
woman covering her face with white book

前一篇介紹過我曾經自己寫了第一個專案 >>【文組的學CODE之路】寫程式第一個專案|要怎麼開始?會遇到什麼問題?

在緩慢學習程式的過程中,心裡常常覺得很著急,因為會看到ptt很多衝刺班的人,他們都在很短的時間內就去面試,更有人順利就職。實在很羨慕,但評估自己的實力,還是乖乖刷leetcode才是真理。

每天都有進步才是重要的,而不是一直跟別人的學習路徑比較。最近的我學習進度是每天都刷leetcode1-3題,通常是複習比較多,因為大部分的題目真的無法盲解,所以會需要找到適合的影片來吸收每一題的概念。

來分享一下一個平凡人的學code之路!

 


 

Python自學經歷 (6-7個月)

  • Python基礎語法理解 (Codecademy課程)
  • Django 初學課程 建立自己的專案 (Udemy)
  • 親自部署heroku, AWS s3
  • Berkeley CS61A 資料結構課程 (大學網路課,後續分享心得)
  • 刷Leetcode 累積30題 (easy為主 , medium)

 

分享:刷Leetcode有什麼好處呢?

了解程式語言的資料結構是什麼

所謂的演算法就是給你資訊,讓你在程式的世界裡演算完成後,告訴你想要的答案。因此leetcode就是在訓練你如何寫出中間的演算過程。

 

練手感跟腦感

學完基礎Python後,基本很難直接跳到運用,因為就連基礎的課程你也只能略懂略懂,但是如果開始寫leetcode,初學者就會面臨到,for loop, while,indention等的關係、快速的把會使用到的公式寫出法。

練熟的人可能覺得很簡單,但一開始真的是連「看解答都不會寫」、「不知道要怎麼寫出這個觀念」的各種大魔王,也會遇到很多之前課程沒有教過的語法使用(這時候就會請出谷歌大神),但就算是練習最簡單的two sum題型,都能讓你練for loop, dictionary的熟練度。

 

慢慢增加自信

因為程式語言跟海一樣深,但工程師們共同經歷過的其實就是leetcode,因此在每一題的堆疊都會感覺到“我跟工程師越來越近了!”的心情,就算一天只能練習一題,也是已經寫過的題型,久了以後,再回來寫這一題,就會發現這個觀念自己寫的很快。

 

工程師找工作必經之路

因為一開始太抗拒寫leetcode了,我問了很多工程師,查詢很多資料,基本上面試一定會遇到leetcode,就是一個考古題,但因為有著FAANG公司的認證,幾乎所有公司都會考leetcode,因此才會有很多工程師說「leetcode刷了沒」或是當你看到有人很認真在刷題,就表示…他要換工作了!

 

30leetcode的心得

  • 明顯看見自己的進步,不管是心態還是對基礎語法的熟練,刷到第10題以後,其實我就沒有那麼抗拒了,一開始真的是連打開網站都需要勇氣。
  • 一整天解出一題,已經很厲害了。在medium的題型中,基本上是連看別人的解答都不一定會寫,因此一天能花幾小時,把一題的結構跟概念理解,已經超級了不起。
  • 如果不會寫,請立刻看解答。自己想不出來就是想不出來,不需要硬是在網頁前面大眼瞪小眼,去看看有沒有別人寫的code是你看得懂的,還是網路上有什麼教學,這才是讓我們進步的能量。
  • 寫完題目後,過幾天就全忘,是正常的!不要讓自己背答案,每次看完題目先想這題的概念是什麼、步驟是什麼,才是重要的!
  • Medium超難(不敢想hard),記得直接去網路上找教學影片,不要浪費時間!

 

我會繼續練習下去,leetcode官網 傳送門分享給你,希望跟我一樣是初學者的你能夠一起練習,找到浮木,一起加油!

0 留言

你可能也會喜歡...

留下你的想法