我是非本科,以前聽過很多人的說法說刷題甚至資料結構演算法根本只是應付面試用,一點都不重要,進去公司就用不到了
但我必須說這種說法不完全正確。
我在進現在這家公司前,刷了600題,經典的題目大概來回做了10遍
來這家公司後,我接到了一個很複雜的任務,大概是倉儲物料的分派系統,某個物料根據某些邏輯所以被分配到哪個廠區,中間很多特殊需求但我不想講太多
為了讓程式高效能化,我手寫了樹的節點,用BFS和DFS來遍歷(不同用途),節點用priority queue排序,然後也用到deque來資料處理,map就不說了,太常用了
就算我訓練過了,我還是覺得這個任務非常難,中間有太多奇怪的需求
我完全可以說,要是我沒有反覆練習leetcode,我都不可能完成這個任務
個人認為leetcode前400題很多題目是真的經典,弄懂題目的意義甚至只是知道這類型的問題有什麼解法,在工作遇到類似的問題都可以直接套
當然有些公司不會有像我們這麼難的邏輯,可能進去之後就是前端串後端API,或是刻CSS,甚至進去是當PM,那當然不會感覺到刷題的重要性
但如果真的想在軟工這通路走久走穩,真心推薦學好演算法和資料結構,然後經典題目要弄懂