LeetCode 面試知識點(diǎn)小結(jié)

本文轉(zhuǎn)載自知乎:Leetcode 面試高頻題 TimothyL

刷題前先確惫窭基本數(shù)據(jù)結(jié)構(gòu)知識已掌握:數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)知識體系詳解數(shù)據(jù)結(jié)構(gòu)skywang12345

LeetCode 做題心得,解題方法:動畫形式解LeetCode題目cookbook

最終掌握各種數(shù)據(jù)結(jié)構(gòu)的原理棍掐、代碼實現(xiàn)烹俗、常用模板、應(yīng)用場景

高頻知識點(diǎn)

序號 題目類型 知識點(diǎn)概述 例題 難度評估
1 排序類(Sort) 掌握快速排序嘹锁、歸并排序的原理與代碼實現(xiàn),以及它們在數(shù)組着裹、鏈表领猾、區(qū)間等問題中的應(yīng)用。 Leetcode 148. Sort List(鏈表歸并排序)骇扇,Leetcode 56. Merge Intervals(區(qū)間合并)摔竿,Leetcode 215. Kth Largest Element in an Array(數(shù)組快速選擇) 中等
2 鏈表類(Linked List) 掌握鏈表的實現(xiàn)、遍歷少孝、反轉(zhuǎn)继低、快慢指針等基本操作,以及它們在環(huán)形鏈表稍走、回文鏈表袁翁、合并鏈表等問題中的應(yīng)用柴底。 Leetcode 141. Linked List Cycle(環(huán)形鏈表判斷),Leetcode 234. Palindrome Linked List(回文鏈表判斷)粱胜,Leetcode 21. Merge Two Sorted Lists(合并兩個有序鏈表) 簡單
3 堆(Heap or Priority Queue)柄驻、棧(Stack)、隊列(Queue)焙压、哈希表類(Hashmap鸿脓、Hashset) 掌握各個數(shù)據(jù)結(jié)構(gòu)的基本原理,增刪查改涯曲,以及它們在最近最少使用緩存野哭、滑動窗口、最大最小棧隊列幻件、最小生成樹拨黔、括號匹配等問題中的應(yīng)用。 Leetcode 239. Sliding Window Maximum(滑動窗口最大值)傲武,Leetcode 23. Merge k Sorted Lists(合并k個有序鏈表)蓉驹,Leetcode 20. Valid Parentheses(括號匹配) 中等
4 二分查找類(Binary Search) 掌握二分查找的原理、邊界條件揪利、變形題目;分類:顯式與隱式狠持。顯式是指數(shù)組中存在目標(biāo)值疟位,隱式是指數(shù)組中不存在目標(biāo)值,但可以通過某種條件來確定目標(biāo)位置喘垂。 Leetcode 704. Binary Search(顯式二分查找)甜刻,Leetcode 35. Search Insert Position(隱式二分查找) 簡單
5 雙指針(Two Pointers) 掌握雙指針的原理、分類正勒、應(yīng)用場景得院;分類:同向、背向章贞、相向祥绞。同向是指兩個指針從同一端開始移動,背向是指兩個指針從兩端開始移動鸭限,相向是指兩個指針從不同方向開始移動蜕径。 Leetcode 26. Remove Duplicates from Sorted Array(同向雙指針),Leetcode 167. Two Sum II - Input array is sorted(背向雙指針)败京,Leetcode 19. Remove Nth Node From End of List(相向雙指針) 簡單
6 二叉樹類(Binary Tree) 掌握二叉樹的遍歷兜喻、遞歸、迭代赡麦、層次遍歷朴皆、前中后序遍歷等基本操作帕识,以及它們在二叉搜索樹、平衡二叉樹遂铡、完全二叉樹等問題中的應(yīng)用肮疗。 Leetcode 94. Binary Tree Inorder Traversal(中序遍歷),Leetcode 102. Binary Tree Level Order Traversal(層次遍歷)忧便,Leetcode 98. Validate Binary Search Tree(二叉搜索樹判斷) 中等
7 寬度優(yōu)先搜索(BFS) 解決什么問題:簡單圖的最短路徑長度族吻;拓?fù)渑判颍槐闅v一個圖(或者樹)珠增。BFS基本模板(需要記錄層數(shù)或者不需要記錄層數(shù))超歌,以及它們在最短路徑、拓?fù)渑判虻俳獭u嶼數(shù)量等問題中的應(yīng)用巍举。 Leetcode 127. Word Ladder(最短路徑),Leetcode 207. Course Schedule(拓?fù)渑判颍?a target="_blank">Leetcode 200. Number of Islands(島嶼數(shù)量) 中等
8 深度優(yōu)先搜索(DFS) 解決什么問題:圖中的符合某種特征的路徑以及長度凝垛、排列組合懊悯、遍歷一個圖(或者樹)、找出圖或者樹中符合題目要求的全部方案梦皮。DFS基本模板(需要記錄路徑炭分,不需要返回值 and 不需要記錄路徑,但需要記錄某些特征的返回值)剑肯,以及它們在組合數(shù)捧毛、子集、全排列等問題中的應(yīng)用让网。 Leetcode 77. Combinations(組合數(shù))呀忧,Leetcode 78. Subsets(子集),Leetcode 46. Permutations(全排列) 中等
9 回溯法類(Backtracking) 掌握回溯法的原理溃睹、剪枝技巧而账、常見模板,以及它們在N皇后因篇、數(shù)獨(dú)泞辐、單詞搜索等問題中的應(yīng)用。 Leetcode 51. N-Queens(N皇后)惜犀,Leetcode 37. Sudoku Solver(數(shù)獨(dú))铛碑,Leetcode 79. Word Search(單詞搜索) 困難
10 前綴和(Prefix Sum) 掌握前綴和的定義、計算方法虽界、應(yīng)用場景汽烦,以及它們在子數(shù)組和、區(qū)間和等問題中的應(yīng)用莉御。 Leetcode 560. Subarray Sum Equals K(子數(shù)組和為k)撇吞,Leetcode 303. Range Sum Query - Immutable(區(qū)間和查詢) 簡單

中頻知識點(diǎn)

序號 題目類型 知識點(diǎn)概述 例題 難度評估
1 并查集(Union Find) 掌握并查集的原理俗冻、合并與查找操作的模板、應(yīng)用場景牍颈;牢記合并與查找兩個操作的模板迄薄,它們在連通分量、朋友圈煮岁、冗余連接等問題中的應(yīng)用讥蔽。 Leetcode 547. Number of Provinces(朋友圈),Leetcode 684. Redundant Connection(冗余連接) 中等
2 字典樹(Trie) 掌握字典樹的原理画机、實現(xiàn)方法冶伞、應(yīng)用場景;它們在單詞搜索步氏、自動補(bǔ)全响禽、最長公共前綴等問題中的應(yīng)用。 Leetcode 208. Implement Trie (Prefix Tree)(字典樹實現(xiàn))荚醒,Leetcode 212. Word Search II(單詞搜索)芋类,Leetcode 14. Longest Common Prefix(最長公共前綴) 中等
3 單調(diào)棧與單調(diào)隊列(Monotone Stack/Queue) 單調(diào)指保留在棧或者隊列中的數(shù)字是單調(diào)遞增或者單調(diào)遞減的界阁;單調(diào)棧一般用于解決數(shù)組中找出每個數(shù)字的第一個大于/小于該數(shù)字的位置或者數(shù)字侯繁;在柱狀圖中最大的矩形、滑動窗口最大值等問題中的應(yīng)用泡躯。 Leetcode 84. Largest Rectangle in Histogram(柱狀圖中最大的矩形)巫击,Leetcode 239. Sliding Window Maximum(滑動窗口最大值) 困難
4 掃描線算法(Sweep Line) 解決時間安排沖突,在會議室安排精续、日程表等問題中的應(yīng)用。 Leetcode 253. Meeting Rooms II(會議室安排)粹懒,Leetcode 731. My Calendar II(日程表) 中等
5 TreeMap 基于紅黑樹的樹狀 hashmap重付,它們在數(shù)據(jù)流中第K大元素、快照數(shù)組等問題中的應(yīng)用凫乖。 Leetcode 703. Kth Largest Element in a Stream(數(shù)據(jù)流中第K大元素)确垫,Leetcode 1146. Snapshot Array(快照數(shù)組) 中等
6 動態(tài)規(guī)劃(Dynamic Programming) 掌握動態(tài)規(guī)劃的定義、狀態(tài)轉(zhuǎn)移方程帽芽、優(yōu)化技巧删掀,它們在最長遞增子序列、最長公共子序列导街、背包問題等問題中的應(yīng)用披泪。 Leetcode 300. Longest Increasing Subsequence(最長遞增子序列),Leetcode 1143. Longest Common Subsequence(最長公共子序列)搬瑰,Leetcode 416. Partition Equal Subset Sum(背包問題) 中等
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末款票,一起剝皮案震驚了整個濱河市控硼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌艾少,老刑警劉巖卡乾,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異缚够,居然都是意外死亡幔妨,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進(jìn)店門谍椅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來误堡,“玉大人,你說我怎么就攤上這事毯辅」÷祝” “怎么了?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵思恐,是天一觀的道長沾谜。 經(jīng)常有香客問我,道長胀莹,這世上最難降的妖魔是什么基跑? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮描焰,結(jié)果婚禮上媳否,老公的妹妹穿的比我還像新娘。我一直安慰自己荆秦,他們只是感情好篱竭,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著步绸,像睡著了一般掺逼。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瓤介,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天吕喘,我揣著相機(jī)與錄音,去河邊找鬼刑桑。 笑死氯质,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的祠斧。 我是一名探鬼主播闻察,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蜓陌?” 一聲冷哼從身側(cè)響起觅彰,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钮热,沒想到半個月后填抬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡隧期,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年飒责,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仆潮。...
    茶點(diǎn)故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡宏蛉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出性置,到底是詐尸還是另有隱情拾并,我是刑警寧澤,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布鹏浅,位于F島的核電站嗅义,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏隐砸。R本人自食惡果不足惜之碗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望季希。 院中可真熱鬧褪那,春花似錦、人聲如沸式塌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽峰尝。三九已至冶忱,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間境析,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工派诬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留劳淆,地道東北人。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓默赂,卻偏偏與公主長得像沛鸵,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評論 2 354

推薦閱讀更多精彩內(nèi)容