【分類整理】面試最常考的 100 道演算法題
大家好,我是 負雪明燭,一位用 7 年寫了 1000 篇 LeetCode 演算法題題解的程式設計師。歡迎關注。
粉絲常說:LeetCode 演算法題太多了,準備面試該刷哪些題目?
我之前根據 LeetCode 上面的點贊量分享過: LeetCode 上最經典的 100 道演算法題 。
這 100 道題目都屬於經典題目了,面試也常考,不過我還是不放心呢,畢竟經典題 ≠ 面試題呀!
但如果想知道面試常考的 100 道演算法題的話,需要至少整理 1000 篇面經吧?這個工作量可不小啊!
還好,網上有個開源專案,幫我們做了這件事情,這個專案就是 CodeTop!
這是網站的介面(地址:https://codetop.cc/home
這是開源專案的 GitHub 主頁,已經 11.5k star ⭐️ 了:
這個專案中的題目來源是***的面經、網友投票等,而且持續更新中,所以還是比較可靠的。
我對這個專案做了整理,分類整理出來面試常考的 100 道演算法題。
在整理之後,我對結果還是有點驚訝的!因為一些常見的資料結構與演算法,竟然沒有在常考面試中出現過!
比如字首和、字首樹、並查集、圖,這些都沒有出現……
最常考面試題還是很基本的連結串列、二叉樹、動態規劃等等,是不是符合你的認知呢?
強烈建議大家在面試前把這 100 道題目搞懂!
作為寵粉達人,我提供了 3 種方式檢視這 100 道題目:
- 思維導圖
- 力扣(LeetCode)題單
- 所有的題目連結
沒有任何套路,直接分享給大家!
思維導圖
線上檢視地址: https://www.mubucm.com/doc/7jiBYKCKqet
力扣(LeetCode)題單
線上檢視地址:https://leetcode-cn.com/problem-list/q3iOID0B/
所有題目的地址如下:
資料結構篇
陣列
- 88. 合併兩個有序陣列,簡單
- 240. 搜尋二維矩陣 II,中等
- 54. 螺旋矩陣,中等
- 48. 旋轉影象,中等
連結串列
- 206. 反轉連結串列,簡單
- 25. K 個一組翻轉連結串列,困難
- 141. 環形連結串列,簡單
- 21. 合併兩個有序連結串列
- 160. 相交連結串列,簡單
- 92. 反轉連結串列 II,中等
- 23. 合併K個排序連結串列,困難
- 142. 環形連結串列 II,中等
- 143. 重排連結串列,中等
- 劍指 Offer 22. 連結串列中倒數第k個節點,簡單
- 19. 刪除連結串列的倒數第N個節點,中等
- 82. 刪除排序連結串列中的重複元素 II,中等
- 2. 兩數相加,中等
- 148. 排序連結串列,中等
- 234. 迴文連結串列,簡單
- 83. 刪除排序連結串列中的重複元素,簡單
- 138. 複製帶隨機指標的連結串列,中等
- 24. 兩兩交換連結串列中的節點,中等
二叉樹
遍歷
前序遍歷
中序遍歷
- 94. 二叉樹的中序遍歷,簡單
層序遍歷
檢視
- 199. 二叉樹的右檢視,中等
二叉搜尋樹
求深度
- 104. 二叉樹的最大深度,簡單
- 110. 平衡二叉樹,簡單
求直徑
- 543. 二叉樹的直徑,簡單
對稱
- 101. 對稱二叉樹,簡單
翻轉
- 226. 翻轉二叉樹,簡單
最近公共祖先
路徑
- 112. 路徑總和,簡單
- 124. 二叉樹中的最大路徑和,困難
重建二叉樹
棧與佇列
- 20. 有效的括號,簡單
- 42. 接雨水,困難
- 232. 用棧實現佇列,簡單
- 155. 最小棧,簡單
- 227. 基本計算器 II,中等
雜湊表 HashMap
- 146. LRU快取機制,中等
- 1. 兩數之和,簡單
- 15. 三數之和,中等
- 41. 缺失的第一個正數,困難
- 169. 多數元素,簡單
- 128. 最長連續序列,中等
字串
- 415. 字串相加,簡單
- 8. 字串轉換整數 (atoi),中等
- 151. 翻轉字串裡的單詞,中等
- 43. 字串相乘,中等
- 468. 驗證IP地址,中等
- 14. 最長公共字首,簡單
- 394. 字串解碼,中等
堆
演算法篇
二分查詢
- 704. 二分查詢,容易
- 33. 搜尋旋轉排序陣列,中等
- 69. Sqrt(x),簡單
- 4. 尋找兩個正序陣列的中位數,困難
- 34. 在排序陣列中查詢元素的第一個和最後一個位置,中等
- 153. 尋找旋轉排序陣列中的最小值,中等
- 162. 尋找峰值,中等
排序
深度優先搜尋 DFS
- 200. 島嶼數量,中等
- 129. 求根節點到葉節點數字之和,中等
廣度優先搜尋 BFS
- 695. 島嶼的最大面積,中等
- 958. 二叉樹的完全性檢驗,中等
位運算
演算法思維
雙指標
- 31. 下一個排列,中等
- 165. 比較版本號,中等
滑動視窗
- 3. 無重複字元的最長子串,中等
- 76. 最小覆蓋子串,困難
- 239. 滑動視窗最大值,困難
回溯法
- 46. 全排列,中等
- 93. 復原 IP 地址,中等
- 113. 路徑總和 II,中等
- 78. 子集,中等
- 22. 括號生成,中等
- 39. 組合總和,中等
動態規劃
- 53. 最大子陣列和,簡單
- 121. 買賣股票的最佳時機,簡單
- 122. 買賣股票的最佳時機 II,中等
- 5. 最長迴文子串,中等
- 300. 最長遞增子序列,中等
- 70. 爬樓梯,簡單
- 72. 編輯距離,困難
- 1143. 最長公共子序列,中等
- 718. 最長重複子陣列,中等
- 322. 零錢兌換,中等
- 32. 最長有效括號,困難
- 64. 最小路徑和,中等
- 62. 不同路徑,中等
- 221. 最大正方形,中等
- 198. 打家劫舍,中等
數學
如果你覺得對你有幫助的話,求贊、求分享、求收藏。你的每一點鼓勵都是對我的最大幫助!