去年至今因為疫情的關係,很多公司開始大幅裁減人力。畢業季到來,台灣的疫情狀況仍然面臨著挑戰,然而有許多的也學員們仍然走向求職的道路,開始丟履歷面試了。這段時間有好多學員私訊我們關於 LeetCode 的相關問題。為解決大家的問題,我們決定用問卷調查工程師們的 LeetCode 面試經驗,來回饋給一直支持 HiSKIO 的你們!當然首先要感謝各位工程師們給 HiSKIO 滿滿的回饋,讓我們有這個機會來跟各位分享工程師的 LeetCode 面試經驗,把這份調查數據回饋給正在求職的大家~

文章目錄
LeetCode 面試調查參與者身分

本次問卷參與者有將近 40% 從事網路前端,其次分別為 35% 的網路後端和 22% 的資料科學領域。
而其中有將近一半的參與者工作上最常使用 JavaScript,比重佔約 47%。其次 python 也是很多軟體工程師在工作上會使用到的程式語言,比重佔約 45%。

本問卷約有 75% 參與者寫軟體開發工作經驗為 3 年以下, 而約 25% 參與者軟體開發工作超過經驗超過 3 年。其中約有 5% 的參與者已有 10 年以上的軟體開發工作經驗。
工程師面試出現 LeetCode 的機率是多少?

根據本次問卷,有超過 25% 的人在面試過程中有被考到 LeetCode 的題目。
其中又為雲端服務、人工智慧和資料科學領域的工程師最常被考到 LeetCode 考題。
根據我們的調查,在這些參與者中,有 48% 的人表示 LeetCode 考題佔他們面試分數的 10-30 分,而有 33% 的人表示佔他們面試分數的 30-50 分。
LeetCode 題型分布有哪些?

在 LeetCode 的考題中,大致可分為基本數據結構的考察、某種算法思想的掌握、邊界條件的考察和找規律或數學公式。
其中以『 某種算法思想的掌握 』最常在面試中考到,佔約 34%。而其次常在面試中被考到的則是『 基本數據結構的考察 』,也有約 31% 的機率。
LeetCode 面試最常遇到哪個演算法考題?

不同領域的工程師在面試中最常遇到的演算法考題不盡相同,
根據我們的統計,泡泡排序 (Bubble Sort) 是面試者最常遇到的題型,其次分別為堆疊 (Stack) 和鏈結串列 (Linked List)。
根據我們交叉比對發現,前端工程師最常在面試中遇到的演算法考題是泡泡排序 (Bubble Sort) 。而後端工程師則是堆疊 (Stack) ,資料科學工程師則是快速排列 (Quick Sort) 。
LeetCode 面試學哪一個演算法幫助最大?

你是不是也想問,到底學哪一個演算法對實作幫助最大?
根據這次的問卷調查,不管是前端、後端還是資料科學工程師,都一致推薦 資料結構:二元樹 (Binary Tree) ,其次分別為堆疊 (Stack) 和快速排列 (Quick Sort) 。
根據此調查進行回推,或許這可以作為你學習的依據哦!
LeetCode 面試不常考但工程師工作常用到的演算法?

在本次調查中,有高達 70% 的人都認為圖(Grapgh)、Floyd-Warshall 演算法、Dijkstra 演算法及系統設計這些雖然不常考,但還是要知道其基本原理及運作方式。
所以大家不要因為它們不常考就不去學習阿,這些演算法可能成為你未來工作的重要基礎或常用工具!
超過一半的人刷 LeetCode 最常遇到什麼問題?

以下是我們統計出大家最常遇到的問題:
- 看不懂題目敘述,不確定自己是否正確的解讀題目、更遑論確認是否答對
- 自己是透過網路資源自學程式的,對演算法和資料結構概念模糊
- 在家裡拼命的看考古題練習,面試一碰到沒看到過的題目就完全傻住
- 只靠別人提供的解答程式碼無法了解解題脈絡,看了半天仍毫無收穫
- Leetcode 上題目總共一千兩百多題,根本沒時間一個一個看
面對這些問題,你需要的是:
- 深入了解題目背後的演算法,學會利用十種演算法/資料結構來優化解題過程
- 面試需要的解題脈絡,不再只是刷題,而是能夠舉一反三
- 面試常見的演算法考題,精選面試常見必考的演算法考題
- 有人可以讓你問問題。刷題卡關時,有專屬的交流社團,與他人交流刷題想法、面試經驗
LeetCode 完整攻略 – 基礎.進階到面試

我們聽見你的困擾了!
讓我們帶你從 LeetCode 學演算法|完整解題技巧 + 面試成功指南
先來看 3 Sum 的例題
你以為要直接給你解答嗎?不不不不, 我們必須先了解解題脈絡
讓我們一起深入了解題目背後的演算法,一起看看這題要怎麼解吧!
了解題目背後的解題脈絡後,該來實戰演練了!
根據剛剛的解題脈絡,一起來試試看吧!
看完影片你是不是也會解了呢!
現在跟你介紹解題的演算法選擇技巧當中的 Two Pointers (雙指標)
經過剛剛的題目,是不是覺得學習起來更有效率了呢?
還想看更多題目嗎?想看更多超實用內容?
好啦,既然你都看到這麼後面了,推薦「 LeetCode 學演算法|完整解題技巧 + 面試成功指南」這堂課給你!
不論是 LeetCode 解題技巧、或是更多的面試乾貨,這裡都有!快去看看吧!
LeetCode 調查結論

最後,統整一下這份 LeetCode 面試經驗調查的一些結論吧!
- 超過 25% 的人在面試過程中有機會被考到 LeetCode 的題目
- 雲端服務、人工智慧、資料科學領域工程師最常被考到 LeetCode 考題
- 大家都覺得學 資料結構: 二元樹(Binary Tree) 幫助最大
- 高達 70% 的人認為有些演算法就算不常考還是要知道基本原理
最後的最後,HiSKIO 再次感謝每一位參與本次調查的學員們!