Leetcode 精選75題 分配比重 題目與題解 熱門考點 演算法框架複習 目錄

更新於 發佈於 閱讀時間約 19 分鐘

建議從左側分類目錄 或者 按Ctrl+F輸入關鍵字進行搜尋


raw-image

Array 類/字串類題目


核心知識點(考點) 回文字串、包含或排除某種字元(例如母音)、反轉字串是熱門考點


回文字串演算法框架複習

合縱連橫: 從 區間DP框架 理解 回文字串的本質


Merge Strings Alternately

交叉合併字串 Merge Strings Alternately_Leetcode 精選75題解析


Greatest Common Divisor of Strings

最大共同子字串 Greatest Common Divisor of Strings_Leetcode 精選75題解析


Kids With the Greatest Number of Candies

擁有最多糖果的小孩 Kids With Greatest Num of Candies_Leetcode 精選75題解析


Can Place Flowers

可以種花嗎? Can Place Flowers_Leetcode 精選75題解析


Reverse Vowels of a String

反轉字串中的母音 Reverse Vowels of a String_Leetcode 精選75題解析


Reverse Words in a String

反轉所有的單字 Reverse Words in a String_Leetcode 精選75題解析


Product of Array Except Self

前綴連乘: 除了自己之外的連乘積 Product of Array Except Self_Leetcode 精選75題


Increasing Triplet Subsequence

是否存在長度為3的遞增子序列 Increasing Triplet Subsequence_Leetcode 精選75題


String Compression

字串壓縮 String Compression_Leetcode 精選75題


雙指標(雙指針, Two pointers)類題目


核心知識點(考點) 搬移、比對、檢查、計算特定條件的元素


Move Zeroes

把零搬到後面 Move Zeroes_Leetcode 精選75題


Is Subsequence

判定字串s是否為字串t的子序列_Leetcode 精選75題


Container With Most Water

讓水槽裝最多的水 Container With Most Water_Leetcode 精選75題


Max Number of K-Sum Pairs

最多可以製造幾個K-sum pairs_Leetcode 精選75題


滑動窗口(滑窗, Sliding window)類題目


核心知識點(考點) 滿足特定條件的連續區間(或 子陣列、子字串)


滑動窗口演算法框架複習

合縱連橫: 從滿足特定條件的區間 理解 滑動窗口 背後的本質


Maximum Average Subarray I

最大平均子陣列 Maximum Average Subarray I_Leetcode #643 精選75題


Maximum Number of Vowels in a Substring of Given Length

包含最多母音,長度為k的子字串_Leetcode #1456 精選75題


Max Consecutive Ones III

滑動窗口應用: 連續為一的最長子陣列_Leetcode #1004 精選75題


Longest Subarray of 1's After Deleting One Element

滑動窗口應用: 刪掉一個元素之後,最長有幾個連續為1的子陣列_Leetcode 精選75題


前綴和(Prefix sum, 離散積分)類題目


核心知識點(考點) 高速計算區間和


前綴和演算法框架與區間和應用複習

合縱連橫: 從區間和應用理解 前綴和 的本質


Find the Highest Altitude

前綴和應用: 尋找旅途中的海拔最高點_Leetcode #1732 精選75題解析


Find Pivot Index

問題化簡_尋找平衡軸心點_Leetcode 精選75題解析


字典(雜湊映射表HashMap) 與 集合(HashSet) 類題目


核心知識點(考點) 常數時間存取已記錄的資訊,檢查元素是否存在


Find the Difference of Two Arrays

集合操作: 尋找兩個陣列的差異值Diff of Two Arrays_Leetcode #2215 精選75題解析


Unique Number of Occurrences

字典應用題_判斷是否每個元素的出現次數都不同 Leetcode #1207 精選75


Determine if Two Strings Are Close

字串應用題 判定兩個字串是否接近(Close) Leetcode #1657 精選75


Equal Row and Column Pairs

字典應用: 計算相同的column row pairs_Leetcode 精選75題解析


堆疊(Stack棧、Monotone stack單調棧) 類題目


核心知識點(考點) 後進先出的性質、配對模型(例: 經典的*號 或 括弧配對)、往前或往後看找最大值/最小值、替代Recursion function call 用來實現DFS


配對模型演算法框架複習

合縱連橫: 從 括弧配對 理解 配對模型與Stack應用


Removing Stars From a String

堆疊應用+模擬: 移除字串中的星號_Leetcode 精選75題解析


Asteroid Collision

堆疊應用+模擬: 星球碰撞_Leetcode 精選75題解析


Decode String

堆疊應用+模擬: 字串解碼_Leetcode 精選75題解析


Daily Temperatures

用 單調棧 來解 每日溫度變化 Daily Temperatures Leetcode #739 精選75題


Online Stock Span

用 單調棧 來解 最近幾日股價的高點 Online Stock Span_Leetcode #901精選75題


佇列 (Queue、隊列) 類題目


核心知識點(考點) 先進先出的性質、最靠近頭部的資料處理、圖論驗算法中的排隊(bfs_queue或priorty_queue)


Number of Recent Calls

系統設計: 最近幾筆的來電紀錄_Leetcode 精選75題解析


Dota2 Senate

互動遊戲模擬題 DOTA2 元老對戰遊戲_Leetcode #649_Leetcode 精選75題解析


鏈結串列 (Linkedlist 串列、鍊表) 類題目


核心知識點(考點) 插入節點、修改節點、刪除節點、檢查節點、反轉串列


Delete the Middle Node of a Linked List

串列應用: 刪除鏈結串列的中央節點_Leetcode #2095_Leetcode精選75題


Odd Even Linked List

重組為奇串列和偶串列 Odd Even Linked List_Leetcode #328 精選75題


Reverse Linked List

串列應用: 反轉整個串列Reverse Linked List_Leetcode #206_Leetcode 精選75


Maximum Twin Sum of a Linked List

鏈結串列中的Twin Sum的最大值_Leetcode #2130_Leetcode 75題精選


深度優先搜索 (DFS)類題目


核心知識點(考點) 圖、樹、串列中的深度優先搜索路徑的存在性檢查、常常配合回溯法來枚舉所有的可能情況


路徑搜索應用配合DFS演算法框架

合縱連橫: 從 路徑搜索 理解DFS背後的本質


枚舉類應用配合DFS+回溯法演算法框架

合縱連橫: DFS+回溯法框架_理解背後的本質


枚舉類應用配合DFS+回溯法演算法框架 解開Combination Sum全系列題

觸類旁通: 用 DFS回溯法框架 解 組合數之和 Combination sum 全系列題。


Maximum Depth of Binary Tree

一題多解 二元樹的最大深度 Maximum Depth of Binary Tree_Leetcode 104精選75


Leaf-Similar Trees

圖論應用題: 判定是否為葉子相似樹? Leaf-similar Trees_Leetcode #871_精選75題


Count Good Nodes in Binary Tree

圖論變化題: 計算好節點Good node的數目_Leetcode 1448_Leetcode精選75題


Path Sum III

DFS+模擬: 組合之和 III Combination Sum III_Leetcode #216 精選75題


Longest ZigZag Path in a Binary Tree

之字形走法的最大長度 Longest ZigZag Path_Leetcode #1372_精選75


Lowest Common Ancestor of a Binary Tree

圖論經典: 二元樹中的最接近公共祖先節點 LCA of a Binary_Leetcode #236 精選75題


Keys and Rooms

一題多解 能打開所有房間的門嗎? Keys and Rooms_Leetcode #841 精選75題


Number of Provinces

經典圖論應用: 省分的總數目 Number of Provinces_Leetcode #547_精選75題


Reorder Routes to Make All Paths Lead to the City Zero

圖論應用: 改變邊的方向,讓所有路徑都指向同一個城市_Leetcode #1466_Leetcode 75精選


Evaluate Division

圖論進階應用 計算除法的值 Evaluate Division_Leetcode #399 精選75題


回溯法(Backtracking)類題目

核心知識點(考點) 枚舉所有可能情況,進行展開、檢查、計算。


Letter Combinations of a Phone Number

DFS模擬 撥號鍵盤上的英文子母組合Letter Comb of Phone Num Leetcode #17 精選75


Combination Sum III

DFS+模擬: 組合之和 III Combination Sum III_Leetcode #216 精選75題


廣度優先搜索 (BFS)類題目


核心知識點(考點)
圖、樹、串列中的廣度優先搜索、等權(或無權)圖的最短(或最佳)路徑、由近而遠探索整張圖。


圖論應用配合BFS演算法框架

合縱連橫: 從 圖論的應用題 理解BFS背後的本質橫:


Binary Tree Right Side View

一題多解 二元樹的右側視角Binary Tree Right Side View_Leetcode #199_精選75題


Maximum Level Sum of a Binary Tree

一題多解: 二元樹裡,最大Level sum是在哪一層? Leetcdoe #1161


Nearest Exit from Entrance in Maze

圖論:最接近的迷宮出口 Nearest Exit from Entrance in Maze_Leetcode 1926


Rotting Oranges

圖論應用: 壞掉的橘子 Rotting Oranges_Leetcode #994_精選75題



二元搜索樹(Binary Search Tree, BST)類題目


二元搜尋樹BST的定義與演算法框架複習

合縱連橫: 從定義出發,理解 二元搜尋樹 背後的本質


Search in a Binary Search Tree

資料結構經典 在二元搜尋樹BST中搜索目標值_Leetcode #700_Leetcode精選75題


Delete Node in a BST

圖論進階題: 在二元搜索樹BST中刪除節點_Leetcode #450_Leetcode 精選75題


二元搜索演算法(Binary Search)類題目


核心知識點(考點)

​在已經排序的輸入中尋找特定元素,

在遞增或遞減(相當於已排序)的序列中進行最佳化。


Guess Number Higher or Lower

遊戲模擬+二分搜尋法: 猜數字Guess Number_Leetcode #374 精選75題


Successful Pairs of Spells and Potions

咒語和藥水的成功配對數 Successful Pairs of Spells&Potions_LC 2300 精選75題


Find Peak Element

一魚多吃 用 二分搜尋 來尋找相對最大值 Find Peak Element Leetcode #162_精選75題解


Koko Eating Bananas

二分搜尋: Koko吃香蕉 Koko Eating Bananas_Leetcode #875 精選75題



堆積(Heap)、優先權佇列 (PriorityQueue) 類題目


核心知識點(考點)

第k小或第k大的元素

前k小或前k大最佳的組合


Kth Largest Element in an Array

隨機快速選擇: 陣列中第k大的元素 Kth Largest Element in Array_Leetcode #215


Smallest Number in Infinite Set

系統設計: 動態取出數據流的最小值 Leetcode #2336_Leetcode 精選75題解析


Maximum Subsequence Score

最大化子序列的分數 Maximum Subsequence Score_Leetcode #2542 精選75題


Total Cost to Hire K Workers

最小堆應用: 雇用k名員工的最小成本 Total Cost to Hire K Workers #2462 精選75題



動態規劃 DP (Dynamic Programming)類題目

核心知識點(考點)

熟悉DP演算法框架,
了解如何定義DP狀態、推導DP狀態轉移關係式、釐清DP遞迴初始條件(終止條件)


移動路徑 配合 DP框架

合縱連橫: 從 移動路徑 理解 格子點DP 框架的本質。


路徑和 配合 DFS + 樹形DP框架

合縱連橫: 從路徑和 理解 DFS+樹型DP 框架的本質。


遞迴數列 配合 DP框架

合縱連橫: 從 數列DP 理解 遞迴數列的本質


經典House Robbery系列題 配合DP框架

合縱連橫: 從區間DP理解House Robbery系列題 背後的本質


經典最佳股票買賣Best time to buy and sell stock系列題 配合DP框架

合縱連橫: 從DP框架理解 最佳股票買賣系列題 的背後本質


N-th Tribonacci Number

活用DP: 泰伯納西數列的第n項 Leetcode #1137_精選75題


Min Cost Climbing Stairs

一魚多吃 用費式數列的模型來解 Min Cost Climbing Stairs_Leetcode #746_精選75題


House Robber

一魚多吃 用DP解House Robbery 打家劫舍問題_Leetcode #198_Leetcode 精選75題解析


Domino and Tromino Tiling

一魚多吃 用DP解 骨牌拼接 Domino and Tromino Tiling_Leetcode 790 精選75題


Unique Paths

DP動態規劃 深入淺出 以Unique Path 路徑總數 為例_精選75題


Longest Common Subsequence

DP經典應用: 找出 最長共同子序列的長度 LCS_Leetcode #1143_Leetcode 精選75題解析


Best Time to Buy and Sell Stock with Transaction Fee

模擬:有交易成本的最佳股票買賣 Best Time to Buy&Sell Stock_Leetcode714 精選75


Edit Distance

一魚多吃 用DP解 編輯距離 Edit Distance_Leetcode #72 精選75題



二進位操作 (Bit Manipulation)類題目


核心知識點(考點)

了解基本二進位操作子特性(AND, NAND, OR, NOR, XOR...等),
與二進位表達式的意義


二進位操作應用與二進位DP框架

合縱連橫: 從 二進位DP框架 來看整數有幾個bit1


Counting Bits

一魚多吃 用DP來數有幾個bit 1_Counting Bits Leetcode #338 精選75題


Single Number

二進位操作 尋找落單的數字 Single Number Leetcode #136 精選75題


Minimum Flips to Make a OR b Equal to c

二進位操作: 最少的bit翻轉次數 讓A OR B = C_Leetcode #1318 精選75題



前綴樹 (Trie)類題目


核心知識點(考點)

了解如何建構前綴樹,以及對應的新增、修改、查詢、刪除的操作


Implement Trie (Prefix Tree)

資料結構實作: Implement Trie 前綴樹Leetcode #208_精選75題


Search Suggestions System

系統實作題: 搜尋建議系統 Search Suggestions System_Leetcode 1268_精選75題



區間 (Interval)類題目


核心知識點(考點)

了解區間如何表達,以及對應的區間新增、合併、查詢操作。


Non-overlapping Intervals

排序應用題: 不重複的區間 Non-overlapping Intervals_Leetcode #435_精選75題


Minimum Number of Arrows to Burst Balloons

用最少的弓箭射穿所有氣球 Min of Arrow to Burst Balloon_Leetcode #452精選75

留言
avatar-img
留言分享你的想法!
Vanessa  Li-avatar-img
2024/05/29
好用心啊,雖然看不懂,但知道你寫得很用心,給你加加油。
小松鼠-avatar-img
發文者
2024/05/29
Vanessa Li 謝謝Vanessa! 我也很喜歡你的作品,特別是手繪圖,很美!
天書來了,但我還是來卡個位!坐一下沙發😆😆😆
小松鼠-avatar-img
發文者
2024/05/29
林燃(創作小說家) 等姐姐的餐廳重新營業~
小松鼠-avatar-img
發文者
2024/06/06
新學員請留意提及了這篇文章,趕快過去看看吧!
小松鼠-avatar-img
發文者
2024/06/06
新學員請留意提及了這篇文章,趕快過去看看吧!
avatar-img
小松鼠的演算法樂園
95會員
427內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
2024/08/13
題目敘述 Combination Sum II_Leetcode #40 給定一個整數陣列candidates 和 目標值target。 每個陣列元素只能選擇一次,請問有多少種組合方法,可以使得組合數總和 = target? 請把滿足組合數總和 = target的組合方法以陣列的形式返回答案
Thumbnail
2024/08/13
題目敘述 Combination Sum II_Leetcode #40 給定一個整數陣列candidates 和 目標值target。 每個陣列元素只能選擇一次,請問有多少種組合方法,可以使得組合數總和 = target? 請把滿足組合數總和 = target的組合方法以陣列的形式返回答案
Thumbnail
2024/05/24
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
Thumbnail
2024/05/24
知道如何從一組給定的英文字母和單字庫中的單字拼出最高分的單字組合。使用DFS + 回溯法 + 剪枝優化的演算法,詳細分析瞭如何展開所有可能的路徑,並且找出符合條件的狀態,協助讀者理解演算法背後的思維和方法。
Thumbnail
2024/05/21
子集合生成是一道經典的組合類上機考和面試題目。本篇文章介紹多個不同的解決方案,以及相關演算法框架。主要目標是給定n個相異的元素,產生所有的子集合。
Thumbnail
2024/05/21
子集合生成是一道經典的組合類上機考和面試題目。本篇文章介紹多個不同的解決方案,以及相關演算法框架。主要目標是給定n個相異的元素,產生所有的子集合。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
介紹朋友新開的蝦皮選物店『10樓2選物店』,並分享方格子與蝦皮合作的分潤計畫,註冊流程簡單,0成本、無綁約,推薦給想增加收入的讀者。
Thumbnail
LeetCode 是一個程式語言版的線上題庫平臺,提供題目描述、程式碼區塊、解題者分享的解法和疑問討論。藉由這篇文章分享我在 LeetCode 上的使用經驗和觀點,包括刷題的重要性、解題心態和練習目標。
Thumbnail
LeetCode 是一個程式語言版的線上題庫平臺,提供題目描述、程式碼區塊、解題者分享的解法和疑問討論。藉由這篇文章分享我在 LeetCode 上的使用經驗和觀點,包括刷題的重要性、解題心態和練習目標。
Thumbnail
題目敘述 Solving Questions With Brainpower 給定一個測驗題陣列,每個欄位都是一個pair, 分別記錄測驗題做完可以得到的分數,和需要的冷卻時間 (也就是會有一段時間不能作答接下來的題目)。 請問在最佳的答題策略下,最多可以獲得多少分數?
Thumbnail
題目敘述 Solving Questions With Brainpower 給定一個測驗題陣列,每個欄位都是一個pair, 分別記錄測驗題做完可以得到的分數,和需要的冷卻時間 (也就是會有一段時間不能作答接下來的題目)。 請問在最佳的答題策略下,最多可以獲得多少分數?
Thumbnail
給定一個字串陣列,請把它們所共有的字元伴隨著出現次數輸出。這篇文章介紹如何使用字典統計出現次數,和字典取交集的方法來解決此問題。並提供了複雜度分析和關鍵知識點。
Thumbnail
給定一個字串陣列,請把它們所共有的字元伴隨著出現次數輸出。這篇文章介紹如何使用字典統計出現次數,和字典取交集的方法來解決此問題。並提供了複雜度分析和關鍵知識點。
Thumbnail
Leetcode 精選75題 題目與題解 熱門考點 目錄 (持續更新中) 建議從左側目錄 或者 按Ctrl+F輸入關鍵字進行搜尋
Thumbnail
Leetcode 精選75題 題目與題解 熱門考點 目錄 (持續更新中) 建議從左側目錄 或者 按Ctrl+F輸入關鍵字進行搜尋
Thumbnail
題目會給定一個陣列nums和一個目標值goal。計算子陣列總和=goal的數目有多少。演算法包含前綴和和字典的技巧,時間複雜度為O(n),空間複雜度為O(n)。
Thumbnail
題目會給定一個陣列nums和一個目標值goal。計算子陣列總和=goal的數目有多少。演算法包含前綴和和字典的技巧,時間複雜度為O(n),空間複雜度為O(n)。
Thumbnail
題目敘述 題目會給定我們兩個字串。 第一個是指定順序的字串order。 第二個是輸入字串s。 要求我們依據order給定的順序,重新排列s。 如果出現order中沒有出現的字母,任意位置皆可。 合法答案可能不只一組,輸出其中一種即可。 題目的原文敘述 測試範例 Example
Thumbnail
題目敘述 題目會給定我們兩個字串。 第一個是指定順序的字串order。 第二個是輸入字串s。 要求我們依據order給定的順序,重新排列s。 如果出現order中沒有出現的字母,任意位置皆可。 合法答案可能不只一組,輸出其中一種即可。 題目的原文敘述 測試範例 Example
Thumbnail
題目敘述 題目會給我們一個字串s。 要求我們移除字串中的星號,還有刪除星號左手邊最靠近的第一個字元。 以字串的形式返回輸出答案。 題目的原文敘述 測試範例 Example 1: Input: s = "leet**cod*e" Output: "lecoe" Explanation:
Thumbnail
題目敘述 題目會給我們一個字串s。 要求我們移除字串中的星號,還有刪除星號左手邊最靠近的第一個字元。 以字串的形式返回輸出答案。 題目的原文敘述 測試範例 Example 1: Input: s = "leet**cod*e" Output: "lecoe" Explanation:
Thumbnail
題目敘述 題目會給定一個輸入字串s和一套編碼規則,要求我們針對字串s進行解碼,並且以字串的形式返回答案。 編碼規則: 數字[字串] -> []內的字串以對應倍數做展開,而且允許巢狀編碼。 例如: 3[a] 解碼完就是 aaa 2[bc] 解碼完就是 bcbc 2[a2[b]] = 2
Thumbnail
題目敘述 題目會給定一個輸入字串s和一套編碼規則,要求我們針對字串s進行解碼,並且以字串的形式返回答案。 編碼規則: 數字[字串] -> []內的字串以對應倍數做展開,而且允許巢狀編碼。 例如: 3[a] 解碼完就是 aaa 2[bc] 解碼完就是 bcbc 2[a2[b]] = 2
Thumbnail
題目敘述 題目會給定我們兩個輸入字串word1, word2,要求我們依照word1,word2,word1,word2, ... 交叉前進的方式,合併兩個字串,作為輸出。 題目的原文敘述 測試範例 Example 1: Input: word1 = "abc", word2 = "pq
Thumbnail
題目敘述 題目會給定我們兩個輸入字串word1, word2,要求我們依照word1,word2,word1,word2, ... 交叉前進的方式,合併兩個字串,作為輸出。 題目的原文敘述 測試範例 Example 1: Input: word1 = "abc", word2 = "pq
Thumbnail
題目敘述 題目會給定兩個輸入。 第一個輸入是關鍵字清單products,第二個是使用者輸入的字串searchWord。 要求我們實現關鍵字搜尋建議系統,使用者每輸入一個字元就推薦一次。 推薦時,優先返回字典序(Lecial order)最接近的關鍵字,最多不要超過三個關鍵字。 題目的原文
Thumbnail
題目敘述 題目會給定兩個輸入。 第一個輸入是關鍵字清單products,第二個是使用者輸入的字串searchWord。 要求我們實現關鍵字搜尋建議系統,使用者每輸入一個字元就推薦一次。 推薦時,優先返回字典序(Lecial order)最接近的關鍵字,最多不要超過三個關鍵字。 題目的原文
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News