The 100-Problem Map
The complete curriculum. Each row is one problem in this book. Patterns are ordered
easiest-first; within each pattern, problems ramp from Easy to Medium.
Pattern 1 - Arrays & Hashing (8 problems)
| # |
LC |
Problem |
Difficulty |
| 1 |
217 |
Contains Duplicate |
Easy |
| 2 |
242 |
Valid Anagram |
Easy |
| 3 |
1 |
Two Sum |
Easy |
| 4 |
49 |
Group Anagrams |
Medium |
| 5 |
347 |
Top K Frequent Elements |
Medium |
| 6 |
238 |
Product of Array Except Self |
Medium |
| 7 |
36 |
Valid Sudoku |
Medium |
| 8 |
128 |
Longest Consecutive Sequence |
Medium |
Pattern 2 - Two Pointers (6 problems)
| # |
LC |
Problem |
Difficulty |
| 9 |
125 |
Valid Palindrome |
Easy |
| 10 |
167 |
Two Sum II - Input Array Is Sorted |
Medium |
| 11 |
15 |
3Sum |
Medium |
| 12 |
11 |
Container With Most Water |
Medium |
| 13 |
977 |
Squares of a Sorted Array |
Easy |
| 14 |
283 |
Move Zeroes |
Easy |
Pattern 3 - Sliding Window (6 problems)
| # |
LC |
Problem |
Difficulty |
| 15 |
121 |
Best Time to Buy and Sell Stock |
Easy |
| 16 |
3 |
Longest Substring Without Repeating Characters |
Medium |
| 17 |
424 |
Longest Repeating Character Replacement |
Medium |
| 18 |
76 |
Minimum Window Substring |
Hard* (kept as window capstone) |
| 19 |
209 |
Minimum Size Subarray Sum |
Medium |
| 20 |
219 |
Contains Duplicate II |
Easy |
*Problem 18 (Min Window Substring) is officially Hard on LeetCode but is the canonical
sliding-window teaching problem, so it is included as the section capstone. All other
problems are Easy/Medium.
Pattern 4 - Stack (5 problems)
| # |
LC |
Problem |
Difficulty |
| 21 |
20 |
Valid Parentheses |
Easy |
| 22 |
155 |
Min Stack |
Medium |
| 23 |
150 |
Evaluate Reverse Polish Notation |
Medium |
| 24 |
739 |
Daily Temperatures |
Medium |
| 25 |
22 |
Generate Parentheses |
Medium |
Pattern 5 - Binary Search (7 problems)
| # |
LC |
Problem |
Difficulty |
| 26 |
704 |
Binary Search |
Easy |
| 27 |
35 |
Search Insert Position |
Easy |
| 28 |
278 |
First Bad Version |
Easy |
| 29 |
74 |
Search a 2D Matrix |
Medium |
| 30 |
875 |
Koko Eating Bananas |
Medium |
| 31 |
153 |
Find Minimum in Rotated Sorted Array |
Medium |
| 32 |
33 |
Search in Rotated Sorted Array |
Medium |
Pattern 6 - Linked List (7 problems)
| # |
LC |
Problem |
Difficulty |
| 33 |
206 |
Reverse Linked List |
Easy |
| 34 |
21 |
Merge Two Sorted Lists |
Easy |
| 35 |
143 |
Reorder List |
Medium |
| 36 |
19 |
Remove Nth Node From End of List |
Medium |
| 37 |
141 |
Linked List Cycle |
Easy |
| 38 |
2 |
Add Two Numbers |
Medium |
| 39 |
234 |
Palindrome Linked List |
Easy |
Pattern 7 - Trees (9 problems)
| # |
LC |
Problem |
Difficulty |
| 40 |
226 |
Invert Binary Tree |
Easy |
| 41 |
104 |
Maximum Depth of Binary Tree |
Easy |
| 42 |
100 |
Same Tree |
Easy |
| 43 |
110 |
Balanced Binary Tree |
Easy |
| 44 |
543 |
Diameter of Binary Tree |
Easy |
| 45 |
102 |
Binary Tree Level Order Traversal |
Medium |
| 46 |
235 |
Lowest Common Ancestor of a BST |
Medium |
| 47 |
98 |
Validate Binary Search Tree |
Medium |
| 48 |
230 |
Kth Smallest Element in a BST |
Medium |
Pattern 8 - Tries (4 problems)
| # |
LC |
Problem |
Difficulty |
| 49 |
208 |
Implement Trie (Prefix Tree) |
Medium |
| 50 |
211 |
Design Add and Search Words Data Structure |
Medium |
| 51 |
212 |
Word Search II |
Hard* (trie capstone) |
| 52 |
720 |
Longest Word in Dictionary |
Easy |
*Problem 51 is officially Hard but is the canonical trie + backtracking teaching problem.
Pattern 9 - Heap / Priority Queue (5 problems)
| # |
LC |
Problem |
Difficulty |
| 53 |
703 |
Kth Largest Element in a Stream |
Easy |
| 54 |
215 |
Kth Largest Element in an Array |
Medium |
| 55 |
347* |
Top K Frequent Elements |
Medium |
| 56 |
973 |
K Closest Points to Origin |
Medium |
| 57 |
355 |
Design Twitter |
Medium |
*Problem 55 (LC 347) also appears in Pattern 1 because it teaches both hashing and heap. Here
it is solved with a heap. To avoid a duplicate folder, the heap version lives in
patterns/09-heap/0347-top-k-frequent-heap/.
Pattern 10 - Backtracking (6 problems)
| # |
LC |
Problem |
Difficulty |
| 58 |
78 |
Subsets |
Medium |
| 59 |
39 |
Combination Sum |
Medium |
| 60 |
46 |
Permutations |
Medium |
| 61 |
90 |
Subsets II |
Medium |
| 62 |
79 |
Word Search |
Medium |
| 63 |
17 |
Letter Combinations of a Phone Number |
Medium |
Pattern 11 - Graphs (9 problems)
| # |
LC |
Problem |
Difficulty |
| 64 |
200 |
Number of Islands |
Medium |
| 65 |
133 |
Clone Graph |
Medium |
| 66 |
695 |
Max Area of Island |
Medium |
| 67 |
994 |
Rotting Oranges |
Medium |
| 68 |
207 |
Course Schedule |
Medium |
| 69 |
417 |
Pacific Atlantic Water Flow |
Medium |
| 70 |
130 |
Surrounded Regions |
Medium |
| 71 |
733 |
Flood Fill |
Easy |
| 72 |
684 |
Redundant Connection |
Medium |
Pattern 12 - Greedy (6 problems)
| # |
LC |
Problem |
Difficulty |
| 73 |
53 |
Maximum Subarray |
Medium |
| 74 |
55 |
Jump Game |
Medium |
| 75 |
45 |
Jump Game II |
Medium |
| 76 |
134 |
Gas Station |
Medium |
| 77 |
846 |
Hand of Straights |
Medium |
| 78 |
11* |
Container With Most Water |
Medium |
*Problem 78 (LC 11) also appears in Pattern 2 (two pointers). It is the canonical greedy/two-
pointer overlap. The greedy folder version is patterns/12-greedy/0011-container-greedy/.
Pattern 13 - Intervals (4 problems)
| # |
LC |
Problem |
Difficulty |
| 79 |
56 |
Merge Intervals |
Medium |
| 80 |
57 |
Insert Interval |
Medium |
| 81 |
435 |
Non-overlapping Intervals |
Medium |
| 82 |
252 |
Meeting Rooms |
Easy |
Pattern 14 - 1-D Dynamic Programming (8 problems)
| # |
LC |
Problem |
Difficulty |
| 83 |
70 |
Climbing Stairs |
Easy |
| 84 |
746 |
Min Cost Climbing Stairs |
Easy |
| 85 |
198 |
House Robber |
Medium |
| 86 |
213 |
House Robber II |
Medium |
| 87 |
322 |
Coin Change |
Medium |
| 88 |
300 |
Longest Increasing Subsequence |
Medium |
| 89 |
139 |
Word Break |
Medium |
| 90 |
5 |
Longest Palindromic Substring |
Medium |
Pattern 15 - 2-D Dynamic Programming (7 problems)
| # |
LC |
Problem |
Difficulty |
| 91 |
62 |
Unique Paths |
Medium |
| 92 |
1143 |
Longest Common Subsequence |
Medium |
| 93 |
64 |
Minimum Path Sum |
Medium |
| 94 |
518 |
Coin Change II |
Medium |
| 95 |
72 |
Edit Distance |
Medium |
| 96 |
647 |
Palindromic Substrings |
Medium |
| 97 |
416 |
Partition Equal Subset Sum |
Medium |
Pattern 16 - Bit Manipulation (3 problems)
| # |
LC |
Problem |
Difficulty |
| 98 |
136 |
Single Number |
Easy |
| 99 |
191 |
Number of 1 Bits |
Easy |
| 100 |
268 |
Missing Number |
Easy |
Summary
- 16 patterns, 100 problems.
- All Easy/Medium except three flagged capstones (LC 76, 212, and LC 5 which is officially
Medium) – each capstone is included because it is the canonical teaching instance of its
pattern and skipping it leaves a gap.
- Two problems appear in two patterns (LC 347, LC 11) to demonstrate pattern overlap; each
lives in a distinct folder with a distinct approach.
- Order within each pattern ramps Easy -> Medium.
This map drives the subagent generation. Each pattern = one subagent batch.