如何科學的刷LeetCode
很多小伙伴剛開始刷LeetCode時,可能會吃力,經常刷了忘,忘了再刷,進入死循環(huán),刷題效率很差。
其實,刷題也要講究技巧,掌握了正確的刷題方法,便能事半功倍~
下面分享幾點我自己的刷題經驗,希望對題主有所啟發(fā)!
主要有以下3點技巧:
按題目分類來刷。
難度要循序漸進。
做好總結。
按題目分類刷題
LeetCode上面的題目都有進行分類,建議在一個時間段只刷同一類型的題目,可以更全面的認識這一類型的數(shù)據(jù)結構or算法,以加深對此類題型的理解。就好比練功夫,前期把一些基本招式都熟悉掌握,后面再串通這些招式,融會貫通。
我個人也是比較習慣按照分類來刷題,自我感覺效果還可以。
我將LeetCode題目進行了整理分類,大家可以參考下:
數(shù)組操作
LeetCode54 螺旋矩陣
LeetCode76 最小覆蓋子串
LeetCode75 顏色分類
LeetCode73 矩陣置零
LeetCode384 打亂數(shù)組
LeetCode581 最短無序連續(xù)子數(shù)組
LeetCode945 使數(shù)組唯一的最小增量
鏈表操作
LeetCode206 反轉鏈表
LeetCode19 刪除鏈表的倒數(shù)第N個節(jié)點
LeetCode25 k個一組翻轉鏈表
LeetCode141 環(huán)形鏈表
LeetCode142 環(huán)形鏈表Ⅱ
LeetCode61 旋轉鏈表
LeetCode138 復制帶隨機指針的鏈表
LeetCode160 相交鏈表
LeetCode707 設計鏈表
棧
LeetCode20 有效的括號
LeetCode32 最長有效括號
LeetCode155 最小棧
LeetCode224 基本計算器
LeetCode232 用棧實現(xiàn)隊列
LeetCode316 去除重復字母
樹的遍歷
LeetCode94 二叉樹的中序遍歷
LeetCode102 二叉樹的層次遍歷
LeetCode110 平衡二叉樹
LeetCode144 二叉樹的前序遍歷
LeetCode145 二叉樹的后序遍歷
二叉搜索樹
LeetCode98 驗證二叉搜索樹
LeetCode450 刪除二叉搜索樹中的節(jié)點
LeetCode701 二叉搜索樹中的插入操作
遞歸
LeetCode21 合并兩個有序鏈表
LeetCode101 對稱二叉樹
LeetCode104 二叉樹的最大深度
LeetCode226 翻轉二叉樹
LeetCode236 二叉樹的最近公共祖先
雙指針/滑動窗口
LeetCode3 無重復字符的最長子串
LeetCode11 盛最多水的容器
LeetCode15 三數(shù)之和
LeetCode16 最接近的三數(shù)之和
LeetCode26 刪除排序數(shù)組中的重復項
LeetCode42 接雨水
LeetCode121 買賣股票的最佳時機
LeetCode209 長度最小的子數(shù)組
快慢指針遍歷
LeetCode141 環(huán)形鏈表
LeetCode202 快樂數(shù)
LeetCode876 鏈表的中間結點
動態(tài)規(guī)劃
LeetCode5 最長回文子串
LeetCode53 最大子序和
LeetCode62 不同路徑
LeetCode64 最小路徑和
LeetCode70 爬樓梯
LeetCode118 楊輝三角
LeetCode300 最長上升子序列
LeetCode1143 最長公共子序列
回溯算法
LeetCode10 正則表達式匹配
LeetCode22 括號生成
LeetCode40 組合總和2
LeetCode46 全排列
貪心算法
LeetCode 11. 盛最多水的容器
LeetCode 406. 根據(jù)身高重建隊列
LeetCode 55. 跳躍游戲
LeetCode 122. 買賣股票的最佳時機 II
LeetCode 309. 最佳買賣股票時機含冷凍期
LeetCode 714. 買賣股票的最佳時機含手續(xù)費
并查集
LeetCode200 島嶼的個數(shù)
LeetCode547 省份數(shù)量
位運算
LeetCode52 N皇后Ⅱ
LeetCode338 比特位計數(shù)
LeetCode191 位1的個數(shù)
LeetCode231 2的冪
難度要循序漸進
這一點是針對初學者來說的,切記一上來就干hard級別的題目,會讓你懷疑人生的。。。
正確的做法是循序漸進,從容易到中等,再過渡到困難級別。不過國內大廠考察算法,一般都是中等難度,困難級別的應該很少考察。
做好總結
多做總結!多做總結!多做總結!
做好總結很重要
雖然總結可能會花費你半個鐘甚至更多的時間,但是不總結的話,下次你遇到這個題目,可能會花更多的時間去思考、解答。