刷 LeetCode 提高效率的关键,本质上就是模式识别(Pattern Recognition)。
当你拿到一道新题,不该盲目暴力枚举,而是要在 30 秒内完成抽象:
看到“连续子数组的最大/最小值” -->联想滑动窗口;
看到“Top K 问题” -->直接锁定堆/优先队列;
看到“图的最短路径” --> 秒套 BFS 模板。
算法面试不是拼即兴灵感,而是拼特征提取与代码模板的熟练度。把常见的数据结构与算法模式拆解透��看到题目自然能瞬间匹配出最优解法。
----
🚀 建议收藏!NeetCode 150 完整刷题清单 + 模式分类速查
刷题不在多而在精,把这 150 道经典题按模式分类刷透,LeetCode 提高的核心本质就是“模式识别”。看到题目要求,能秒级抽象出对应的数据结构与算法模板,面试基本上就稳了!
以下是 NeetCode 150 的 15 个核心分类及完整题目清单 帮助你开始你的模式识别训练:
---
📌 1. Array & Hashing (数组与哈希) - 9 题
1. Contains Duplicate
2. Valid Anagram
3. Two Sum
4. Group Anagrams
5. Top K Frequent Elements
6. Product of Array Except Self
7. Valid Sudoku
8. Encode and Decode Strings
9. Longest Consecutive Sequence
---
📌 2. Two Pointers (双指针) - 5 题
1. Valid Palindrome
2. Two Sum II Input Array Is Sorted
3. 3Sum
4. Container With Most Water
5. Trapping Rain Water
---
📌 3. Sliding Window (滑动窗口) - 6 题
1. Best Time to Buy And Sell Stock
2. Longest Substring Without Repeating Characters
3. Longest Repeating Character Replacement
4. Permutation In String
5. Minimum Window Substring
6. Sliding Window Maximum
---
📌 4. Stack (栈) - 7 题
1. Valid Parentheses
2. Min Stack
3. Evaluate Reverse Polish Notation
4. Generate Parentheses
5. Daily Temperatures
6. Car Fleet
7. Largest Rectangle In Histogram
---
📌 5. Binary Search (二分查找) - 7 题
1. Binary Search
2. Search a 2D Matrix
3. Koko Eating Bananas
4. Find Minimum In Rotated Sorted Array
5. Search In Rotated Sorted Array
6. Time Based Key-Value Store
7. Median of Two Sorted Arrays
---
📌 6. Linked List (链表) - 11 题
1. Reverse Linked List
2. Merge Two Sorted Lists
3. Reorder List
4. Remove Nth Node From End of List
5. Copy List With Random Pointer
6. Add Two Numbers
7. Linked List Cycle
8. Find The Duplicate Number
9. LRU Cache
10. Merge K Sorted Lists
11. Reverse Nodes In K-Group
---
📌 7. Trees (二叉树) - 15 题
1. Invert Binary Tree
2. Maximum Depth of Binary Tree
3. Diameter of Binary Tree
4. Balanced Binary Tree
5. Same Tree
6. Subtree of Another Tree
7. Lowest Common Ancestor of a BST
8. Binary Tree Level Order Traversal
9. Binary Tree Right Side View
10. Count Good Nodes In Binary Tree
11. Validate Binary Search Tree
12. Kth Smallest Element In a BST
13. Construct Binary Tree From Preorder And Inorder Traversal
14. Binary Tree Maximum Path Sum
15. Serialize And Deserialize Binary Tree
---
📌 8. Tries (前缀树) - 3 题
1. Implement Trie Prefix Tree
2. Design Add And Search Words Data Structure
3. Word Search II
---
📌 9. Heap / Priority Queue (堆与优先队列) - 7 题
1. Kth Largest Element In a Stream
2. Last Stone Weight
3. K Closest Points to Origin
4. Kth Largest Element In An Array
5. Task Scheduler
6. Design Twitter
7. Find Median From Data Stream
---
📌 10. Backtracking (回溯算法) - 9 题
1. Subsets
2. Combination Sum
3. Permutations
4. Subsets II
5. Combination Sum II
6. Word Search
7. Palette Partitioning
8. Letter Combinations of a Phone Number
9. N-Queens
---
📌 11. Graphs (图算法) - 13 题
1. Number of Islands
2. Max Area of Island
3. Clone Graph
4. Walls And Gates
5. Rotting Oranges
6. Pacific Atlantic Water Flow
7. Surrounded Regions
8. Course Schedule
9. Course Schedule II
10. Graph Valid Tree
11. Number of Connected Components In An Undirected Graph
12. Redundant Connection
13. Word Ladder
---
📌 12. Advanced Graphs (进阶图论) - 6 题
1. Reconstruct Itinerary
2. Min Cost to Connect All Points
3. Network Delay Time
4. Swim In Rising Water
5. Alien Dictionary
6. Cheapest Flights Within K Stops
---
📌 13. 1D Dynamic Programming (一��动态规划) - 12 题
1. Climbing Stairs
2. Min Cost Climbing Stairs
3. House Robber
4. House Robber II
5. Longest Palindromic Substring
6. Palindromic Substrings
7. Decode Ways
8. Coin Change
9. Maximum Product Subarray
10. Word Break
11. Longest Increasing Subsequence
12. Partition Equal Subset Sum
---
📌 14. 2D Dynamic Programming (二维动态规划) - 11 题
1. Unique Paths
2. Longest Common Subsequence
3. Best Time to Buy And Sell Stock With Cooldown
4. Coin Change II
5. Target Sum
6. Interleaving String
7. Longest Increasing Path In a Matrix
8. Distinct Subsequences
9. Edit Distance
10. Burst Balloons
11. Regular Expression Matching
---
📌 15. Greedy, Intervals, Math & Bit Manipulation (贪心/区间/数学与位运算) - 29 题
• Greedy:
1. Maximum Subarray
2. Jump Game
3. Jump Game II
4. Gas Station
5. Hand of Straights
6. Merge Triplets to Form Target Triplet
7. Partition Labels
8. Valid Parenthesis String
• Intervals:
9. Insert Interval
10. Merge Intervals
11. Non-Overlapping Intervals
12. Meeting Rooms
13. Meeting Rooms II
14. Minimum Interval to Include Each Query
• Bit Manipulation:
15. Single Number
16. Number of 1 Bits
17. Counting Bits
18. Reverse Bits
19. Missing Number
20. Sum of Two Integers
21. Reverse Integer
• Math & Geometry:
22. Rotate Image
23. Spiral Matrix
24. Set Matrix Zeroes
25. Happy Number
26. Pow(x, n)
27. Multiply Strings
28. Detect Squares