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

53會員
341內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
創作者要怎麼好好休息 + 避免工作過量?《黑貓創作報#4》午安,最近累不累? 這篇不是虛假的關心。而是《黑貓創作報》發行以來可能最重要的一篇。 是的,我們這篇講怎麼補充能量,也就是怎麼休息。
Thumbnail
avatar
黑貓老師
2024-06-29
[LeetCode] 875 - Koko Eating Bananas[LeetCode] 875 - Koko Eating Bananas 解題
avatar
Tumi
2024-02-29
[Leetcode] 121. Best Time to Buy and Sell Stock題目 : 121. Best Time to Buy and Sell Stock
Thumbnail
avatar
Youna
2024-02-13
Leetcode 30 天 Pandas 挑戰分享參加Leetcode的30 Days of Pandas挑戰,除了是學習的機會,更是練習熟悉pandas功能的機會。文章分享了挑戰簡介、題目描述、關鍵技術以及參加挑戰的心得。適合新手學習pandas,也可提升熟練度。
Thumbnail
avatar
Karen
2024-01-30
[Leetcode] 100. Same Tree題目 : 100. Same Tree
Thumbnail
avatar
Youna
2024-01-11
[Leetcode] 83. Remove Duplicates from Sorted List題目 : 83. Remove Duplicates from Sorted List
Thumbnail
avatar
Youna
2024-01-11
[Leetcode] 27. Remove Element題目 : 27. Remove Element
Thumbnail
avatar
Youna
2024-01-11
[Leetcode] 88. Merge Sorted Array題目 : 88. Merge Sorted Array
Thumbnail
avatar
Youna
2024-01-11
[Leetcode] 69. Sqrt(x)題目 : 69. Sqrt(x)
Thumbnail
avatar
Youna
2024-01-10
[Leetcode] 35. Search Insert Position題目 : 35. Search Insert Position
Thumbnail
avatar
Youna
2024-01-10