mirror of
https://github.com/prdlk/leetcode.git
synced 2026-09-17 15:36:26 +00:00
288 lines
8.2 KiB
Markdown
288 lines
8.2 KiB
Markdown
<p align="center">
|
||
<img alt="header" src="https://shieldcn.dev/header/gradient.svg?title=prdlk%2Fleetcode&subtitle=Personal+Leetcode+solutions%2C+concepts%2C+and+patterns&logo=leetcode&mode=dark" />
|
||
</p>
|
||
|
||
<p align="center">
|
||
<a href="https://x.com/basedprad"><img alt="follow" src="https://shieldcn.dev/x/follow/basedprad.svg" /></a>
|
||
<a href="https://lc.prad.nu"><img alt="badge" src="https://shieldcn.dev/badge/Read-Documentation.svg?logo=lu%3ABook" /></a>
|
||
</p>
|
||
|
||
|
||
## Phase I — Linear Structures (Week 1)
|
||
|
||
### 1. Hash-Based Lookup — builds on nothing
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 217 | Contains Duplicate |
|
||
| A | 242 | Valid Anagram |
|
||
| A | 1 | Two Sum |
|
||
| A | 49 | Group Anagrams |
|
||
| A | 347 | Top K Frequent Elements |
|
||
| B | 383 | Ransom Note |
|
||
| B | 205 | Isomorphic Strings |
|
||
| B | 128 | Longest Consecutive Sequence |
|
||
| B | 290 | Word Pattern |
|
||
|
||
### 2. Prefix Sum — builds on 1
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 303 | Range Sum Query |
|
||
| A | 238 | Product of Array Except Self |
|
||
| A | 560 | Subarray Sum Equals K |
|
||
| B | 525 | Contiguous Array |
|
||
| B | 974 | Subarray Sums Divisible by K |
|
||
|
||
### 3. Two Pointers — builds on ordered iteration
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 125 | Valid Palindrome |
|
||
| A | 167 | Two Sum II |
|
||
| A | 15 | 3Sum |
|
||
| A | 11 | Container With Most Water |
|
||
| A | 42 | Trapping Rain Water |
|
||
| B | 392 | Is Subsequence |
|
||
| B | 977 | Squares of a Sorted Array |
|
||
| B | 189 | Rotate Array |
|
||
| B | 80 | Remove Duplicates II |
|
||
|
||
### 4. Sliding Window — builds on 3
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 121 | Best Time to Buy and Sell Stock |
|
||
| A | 3 | Longest Substring Without Repeating Characters |
|
||
| A | 424 | Longest Repeating Character Replacement |
|
||
| A | 567 | Permutation in String |
|
||
| A | 76 | Minimum Window Substring |
|
||
| B | 209 | Minimum Size Subarray Sum |
|
||
| B | 1004 | Max Consecutive Ones III |
|
||
| B | 643 | Maximum Average Subarray |
|
||
|
||
### 5. Binary Search — builds on ordered/monotonic invariants
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 704 | Binary Search |
|
||
| A | 74 | Search a 2D Matrix |
|
||
| A | 875 | Koko Eating Bananas |
|
||
| A | 33 | Search in Rotated Sorted Array |
|
||
| A | 153 | Find Minimum in Rotated Sorted Array |
|
||
| B | 35 | Search Insert Position |
|
||
| B | 162 | Find Peak Element |
|
||
| B | 34 | First & Last Position |
|
||
| B ⭐ | 4 | Median of Two Sorted Arrays |
|
||
|
||
### 6. Stack — independent primitive
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 20 | Valid Parentheses |
|
||
| A | 155 | Min Stack |
|
||
| A | 150 | Evaluate Reverse Polish Notation |
|
||
| B | 71 | Simplify Path |
|
||
| B ⭐ | 224 | Basic Calculator |
|
||
|
||
### 7. Monotonic Stack — builds on 6
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 739 | Daily Temperatures |
|
||
| A | 853 | Car Fleet |
|
||
| B | 496 | Next Greater Element I |
|
||
| B | 901 | Online Stock Span |
|
||
| B ⭐ | 84 | Largest Rectangle in Histogram |
|
||
|
||
---
|
||
|
||
## Phase II — Nodal & Grid Structures (Week 2)
|
||
|
||
### 8. Linked List — independent primitive
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 206 | Reverse Linked List |
|
||
| A | 21 | Merge Two Sorted Lists |
|
||
| A | 141 | Linked List Cycle |
|
||
| A | 19 | Remove Nth Node From End |
|
||
| A | 143 | Reorder List |
|
||
| B | 876 | Middle of the Linked List |
|
||
| B | 92 | Reverse Linked List II |
|
||
| B | 82 | Remove Duplicates from Sorted List II |
|
||
| B | 61 | Rotate List |
|
||
| B | 86 | Partition List |
|
||
|
||
### 9. Hybrid Structures — builds on 1 + 8
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 146 | LRU Cache |
|
||
| A | 2 | Add Two Numbers |
|
||
| B | 138 | Copy List with Random Pointer |
|
||
| B | 380 | Insert Delete GetRandom O(1) |
|
||
|
||
### 10. Matrix Index Math — builds on 3
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 48 | Rotate Image |
|
||
| A | 54 | Spiral Matrix |
|
||
| A | 73 | Set Matrix Zeroes |
|
||
| B | 36 | Valid Sudoku |
|
||
| B | 289 | Game of Life |
|
||
|
||
---
|
||
|
||
## Phase III — Hierarchical Structures (Week 3)
|
||
|
||
### 11. Tree DFS — builds on recursion
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 226 | Invert Binary Tree |
|
||
| A | 104 | Maximum Depth of Binary Tree |
|
||
| A | 100 | Same Tree |
|
||
| A | 572 | Subtree of Another Tree |
|
||
| A | 236 | Lowest Common Ancestor |
|
||
| A ⭐ | 124 | Binary Tree Maximum Path Sum |
|
||
| B | 101 | Symmetric Tree |
|
||
| B | 112 | Path Sum |
|
||
| B | 129 | Sum Root to Leaf Numbers |
|
||
| B | 543 | Diameter of Binary Tree |
|
||
|
||
### 12. Tree BFS — builds on 6's sibling (queue) + 11
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 102 | Level Order Traversal |
|
||
| A | 199 | Right Side View |
|
||
| A | 1448 | Count Good Nodes |
|
||
| B | 103 | Zigzag Level Order |
|
||
| B | 637 | Average of Levels |
|
||
|
||
### 13. Binary Search Tree — builds on 5 + 11
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 98 | Validate BST |
|
||
| A | 230 | Kth Smallest in BST |
|
||
| A | 235 | LCA of BST |
|
||
| A | 105 | Build from Preorder + Inorder |
|
||
| B | 530 | Minimum Absolute Difference |
|
||
| B | 173 | BST Iterator |
|
||
| B | 108 | Sorted Array to BST |
|
||
|
||
### 14. Heap / Priority Queue — builds on trees (implicit tree over array)
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 215 | Kth Largest in Array |
|
||
| A | 703 | Kth Largest in Stream |
|
||
| A | 973 | K Closest Points |
|
||
| A | 621 | Task Scheduler |
|
||
| A | 23 | Merge K Sorted Lists |
|
||
| B | 1046 | Last Stone Weight |
|
||
| B | 373 | K Pairs with Smallest Sums |
|
||
| B ⭐ | 295 | Find Median from Data Stream |
|
||
| B ⭐ | 502 | IPO |
|
||
|
||
### 15. Trie — builds on 11
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 208 | Implement Trie |
|
||
| A | 211 | Add & Search Words |
|
||
| B | 212 | Word Search II *(needs topic 20 — schedule after)* |
|
||
|
||
---
|
||
|
||
## Phase IV — Relational Structures (Week 4)
|
||
|
||
### 16. Graph DFS — builds on 11 + visited set
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 200 | Number of Islands |
|
||
| A | 695 | Max Area of Island |
|
||
| A | 133 | Clone Graph |
|
||
| A | 417 | Pacific Atlantic Water Flow |
|
||
| A | 130 | Surrounded Regions |
|
||
| B | 399 | Evaluate Division |
|
||
| B | 261 | Graph Valid Tree |
|
||
|
||
### 17. Graph BFS — builds on 12 + visited set
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 994 | Rotting Oranges |
|
||
| A | 127 | Word Ladder |
|
||
| B | 909 | Snakes and Ladders |
|
||
| B | 433 | Minimum Genetic Mutation |
|
||
| B | 286 | Walls and Gates |
|
||
|
||
### 18. Topological Sort — builds on 16
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 207 | Course Schedule |
|
||
| A | 210 | Course Schedule II |
|
||
| B ⭐ | 269 | Alien Dictionary |
|
||
| B | 1462 | Course Schedule IV |
|
||
|
||
### 19. Union-Find — builds on 16's problem class
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 684 | Redundant Connection |
|
||
| A | 323 | Number of Connected Components |
|
||
| B | 128 | Longest Consecutive (union-find variant) |
|
||
| B | 721 | Accounts Merge |
|
||
|
||
---
|
||
|
||
## Phase V — Decision-Space Exploration (Weeks 4–5)
|
||
|
||
### 20. Backtracking — builds on 16
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 78 | Subsets |
|
||
| A | 39 | Combination Sum |
|
||
| A | 46 | Permutations |
|
||
| A | 79 | Word Search |
|
||
| B | 17 | Letter Combinations |
|
||
| B | 77 | Combinations |
|
||
| B | 22 | Generate Parentheses |
|
||
| B ⭐ | 52 | N-Queens II |
|
||
|
||
*(Now unlock 212 Word Search II from topic 15.)*
|
||
|
||
### 21. 1-D Dynamic Programming — builds on 20
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 70 | Climbing Stairs |
|
||
| A | 746 | Min Cost Climbing Stairs |
|
||
| A | 198 | House Robber |
|
||
| A | 213 | House Robber II |
|
||
| A | 322 | Coin Change |
|
||
| A | 300 | Longest Increasing Subsequence |
|
||
| B | 139 | Word Break |
|
||
| B | 91 | Decode Ways |
|
||
| B | 647 | Palindromic Substrings |
|
||
|
||
### 22. Multi-D / Grid DP — builds on 21
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 62 | Unique Paths |
|
||
| A | 64 | Minimum Path Sum |
|
||
| A | 1143 | Longest Common Subsequence |
|
||
| B | 120 | Triangle |
|
||
| B | 63 | Unique Paths II |
|
||
| B ⭐ | 72 | Edit Distance |
|
||
| B | 221 | Maximal Square |
|
||
| B ⭐ | 97 | Interleaving String |
|
||
|
||
### 23. Greedy — builds on 21
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 53 | Maximum Subarray (Kadane's) |
|
||
| A | 55 | Jump Game |
|
||
| A | 45 | Jump Game II |
|
||
| A | 134 | Gas Station |
|
||
| B | 122 | Best Time to Buy and Sell Stock II |
|
||
| B | 918 | Maximum Sum Circular Subarray |
|
||
| B | 763 | Partition Labels |
|
||
|
||
### 24. Intervals — builds on 23
|
||
| Set | LC # | Problem |
|
||
|---|---|---|
|
||
| A | 57 | Insert Interval |
|
||
| A | 56 | Merge Intervals |
|
||
| A | 435 | Non-Overlapping Intervals |
|
||
| A | 253 | Meeting Rooms II |
|
||
| B | 228 | Summary Ranges |
|
||
| B | 452 | Minimum Arrows to Burst Balloons |
|
||
| B | 920 | Meeting Rooms I |
|