Pattern 15: Blind 75 — The Essential Interview Problem Set
Pattern guideUpdated
On this page
- What is the Blind 75?
- Categories & Problem Counts
- Complete Blind 75 Problem List
- Array (10 problems)
- Binary / Bit Manipulation (5 problems)
- Dynamic Programming (11 problems)
- Graph (8 problems)
- Interval (4 problems)
- Linked List (6 problems)
- Matrix (4 problems)
- String (10 problems)
- Tree (11 problems)
- Trie (3 problems)
- Heap (3 problems)
- Study Strategy
- Recommended Order
- Time Targets
- The Pattern Recognition Loop
- Cross-Reference with Existing Pattern Directories
What is the Blind 75?
The Blind 75 is a curated list of 75 LeetCode problems created by Yangshun Tay in 2018. It covers the most frequently asked coding interview questions across 11 categories. Mastering these problems gives you the patterns and techniques needed to solve the vast majority of coding interview questions at companies like Google, Meta, Amazon, Apple, and Microsoft.
Philosophy: Don’t memorize solutions. Learn the patterns and techniques. Once you recognize a pattern, the solution approach becomes clear.
Categories & Problem Counts
| # | Category | Count | Key Patterns |
|---|---|---|---|
| 1 | Array | 10 | HashMap, Two Pointers, Binary Search, Kadane’s, Prefix Products |
| 2 | Binary / Bit Manipulation | 5 | XOR, Bit Shifting, Brian Kernighan’s trick |
| 3 | Dynamic Programming | 11 | 1D DP, 2D DP, State Machines, Knapsack |
| 4 | Graph | 8 | DFS, BFS, Topological Sort, Union Find |
| 5 | Interval | 4 | Sort by start, Greedy merge |
| 6 | Linked List | 6 | Two Pointers, Fast/Slow, Reversal |
| 7 | Matrix | 4 | Layer traversal, Transpose, DFS Backtracking |
| 8 | String | 10 | Sliding Window, HashMap, Stack, Expand Around Center |
| 9 | Tree | 11 | DFS, BFS, Inorder, Preorder, Recursion |
| 10 | Trie | 3 | Prefix Tree, DFS + Trie |
| 11 | Heap | 3 | Min/Max Heap, Two Heaps, Bucket Sort |
| Total | 75 |
Complete Blind 75 Problem List
Array (10 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Two Sum | 1 | Easy | HashMap complement lookup |
| 2 | Best Time to Buy and Sell Stock | 121 | Easy | Track min price, greedy |
| 3 | Contains Duplicate | 217 | Easy | HashSet |
| 4 | Product of Array Except Self | 238 | Medium | Prefix/suffix products |
| 5 | Maximum Subarray | 53 | Medium | Kadane’s algorithm |
| 6 | Maximum Product Subarray | 152 | Medium | Track min and max product |
| 7 | Find Minimum in Rotated Sorted Array | 153 | Medium | Binary search |
| 8 | Search in Rotated Sorted Array | 33 | Medium | Modified binary search |
| 9 | 3Sum | 15 | Medium | Sort + two pointers |
| 10 | Container With Most Water | 11 | Medium | Two pointers from edges |
Binary / Bit Manipulation (5 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Sum of Two Integers | 371 | Medium | XOR + carry with AND shift |
| 2 | Number of 1 Bits | 191 | Easy | n & (n-1) trick |
| 3 | Counting Bits | 338 | Easy | DP: ans[i] = ans[i>>1] + (i&1) |
| 4 | Missing Number | 268 | Easy | XOR all indices and values |
| 5 | Reverse Bits | 190 | Easy | Bit-by-bit shift |
Dynamic Programming (11 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Climbing Stairs | 70 | Easy | Fibonacci-style DP |
| 2 | Coin Change | 322 | Medium | Unbounded knapsack DP |
| 3 | Longest Increasing Subsequence | 300 | Medium | 1D DP or patience sort |
| 4 | Longest Common Subsequence | 1143 | Medium | 2D DP |
| 5 | Word Break | 139 | Medium | DP + HashSet |
| 6 | Combination Sum IV | 377 | Medium | 1D DP permutation count |
| 7 | House Robber | 198 | Medium | Skip-adjacent DP |
| 8 | House Robber II | 213 | Medium | Circular array DP |
| 9 | Decode Ways | 91 | Medium | 1D DP with 1/2 digit checks |
| 10 | Unique Paths | 62 | Medium | 2D grid DP |
| 11 | Jump Game | 55 | Medium | Greedy reachability |
Graph (8 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Clone Graph | 133 | Medium | BFS/DFS + HashMap clone |
| 2 | Course Schedule | 207 | Medium | Topological sort / cycle detection |
| 3 | Pacific Atlantic Water Flow | 417 | Medium | Multi-source reverse DFS |
| 4 | Number of Islands | 200 | Medium | DFS/BFS flood fill |
| 5 | Longest Consecutive Sequence | 128 | Medium | HashSet streak heads |
| 6 | Alien Dictionary | 269 | Hard | Topological sort from word order |
| 7 | Graph Valid Tree | 261 | Medium | Union Find + edge count |
| 8 | Number of Connected Components | 323 | Medium | Union Find / DFS |
Interval (4 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Insert Interval | 57 | Medium | Find overlap window, merge |
| 2 | Merge Intervals | 56 | Medium | Sort by start + merge |
| 3 | Non-overlapping Intervals | 435 | Medium | Greedy: keep earliest end |
| 4 | Meeting Rooms II | 253 | Medium | Min-heap or sweep line |
Linked List (6 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Reverse Linked List | 206 | Easy | Iterative pointer swap |
| 2 | Linked List Cycle | 141 | Easy | Floyd’s slow/fast pointers |
| 3 | Merge Two Sorted Lists | 21 | Easy | Dummy head + merge |
| 4 | Merge K Sorted Lists | 23 | Hard | Min-heap or divide & conquer |
| 5 | Remove Nth Node From End | 19 | Medium | Two pointers with gap |
| 6 | Reorder List | 143 | Medium | Find mid + reverse + zip merge |
Matrix (4 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Set Matrix Zeroes | 73 | Medium | First row/col as markers |
| 2 | Spiral Matrix | 54 | Medium | Layer-by-layer shrink |
| 3 | Rotate Image | 48 | Medium | Transpose + reverse rows |
| 4 | Word Search | 79 | Medium | DFS backtracking |
String (10 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Longest Substring Without Repeating | 3 | Medium | Sliding window + HashSet |
| 2 | Longest Repeating Character Replacement | 424 | Medium | Sliding window + frequency |
| 3 | Minimum Window Substring | 76 | Hard | Sliding window + frequency map |
| 4 | Valid Anagram | 242 | Easy | Frequency count |
| 5 | Group Anagrams | 49 | Medium | Sorted key + HashMap |
| 6 | Valid Parentheses | 20 | Easy | Stack matching |
| 7 | Longest Palindromic Substring | 5 | Medium | Expand around center |
| 8 | Palindromic Substrings | 647 | Medium | Expand around center |
| 9 | Encode and Decode Strings | 271 | Medium | Length-delimited encoding |
| 10 | Valid Palindrome | 125 | Easy | Two pointers + skip |
Tree (11 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Maximum Depth of Binary Tree | 104 | Easy | DFS recursion |
| 2 | Same Tree | 100 | Easy | DFS simultaneous traversal |
| 3 | Invert Binary Tree | 226 | Easy | DFS swap children |
| 4 | Binary Tree Maximum Path Sum | 124 | Hard | DFS + global max tracking |
| 5 | Binary Tree Level Order Traversal | 102 | Medium | BFS with queue |
| 6 | Serialize and Deserialize Binary Tree | 297 | Hard | Preorder + delimiter |
| 7 | Subtree of Another Tree | 572 | Easy | DFS + subtree match |
| 8 | Construct from Preorder and Inorder | 105 | Medium | Recursion + index map |
| 9 | Validate Binary Search Tree | 98 | Medium | Inorder or range check |
| 10 | Kth Smallest Element in BST | 230 | Medium | Inorder traversal |
| 11 | Lowest Common Ancestor of BST | 235 | Medium | BST property split point |
Trie (3 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Implement Trie (Prefix Tree) | 208 | Medium | TrieNode array of children |
| 2 | Add and Search Word | 211 | Medium | Trie + DFS for wildcards |
| 3 | Word Search II | 212 | Hard | Trie + board DFS |
Heap (3 problems)
| # | Problem | LC # | Difficulty | Key Pattern |
|---|---|---|---|---|
| 1 | Merge K Sorted Lists | 23 | Hard | Min-heap |
| 2 | Top K Frequent Elements | 347 | Medium | Bucket sort or min-heap |
| 3 | Find Median from Data Stream | 295 | Hard | Two heaps (max + min) |
Study Strategy
Recommended Order
- Array — Foundation; teaches HashMap, two pointers, binary search
- String — Reinforces sliding window and HashMap skills
- Linked List — Pointer manipulation mastery
- Tree — Recursion and DFS/BFS foundations
- Graph — Extends tree traversal to general graphs
- Binary — Quick wins with bit tricks
- Matrix — 2D traversal patterns
- Interval — Sort-and-merge strategy
- Heap — Priority queue applications
- Trie — Advanced string matching
- Dynamic Programming — Save for last; requires all prior patterns
Time Targets
| Difficulty | Target Time | Practice Time |
|---|---|---|
| Easy | 10-15 min | 20-30 min |
| Medium | 20-30 min | 40-60 min |
| Hard | 30-45 min | 60-90 min |
The Pattern Recognition Loop
- Read the problem — identify keywords
- Match to a known pattern (this guide helps)
- Write pseudocode BEFORE coding
- Code the brute force first
- Optimize to the pattern-based solution
- Dry run with a sample input
- Analyze time and space complexity
Cross-Reference with Existing Pattern Directories
Many Blind 75 problems are also covered in your numbered pattern directories:
| Blind 75 Problem | Also In Directory |
|---|---|
| LC 121 Best Time to Buy and Sell Stock | 00-Foundations/ |
| LC 238 Product of Array Except Self | 00-Foundations/ |
| LC 125 Valid Palindrome | 01-Two-Pointers/ |
| LC 217 Contains Duplicate | 03-Hashing-Frequency-Maps/ |
| LC 242 Valid Anagram | 03-Hashing-Frequency-Maps/ |
| LC 57 Insert Interval | 05-Merge-Intervals/ |
| LC 253 Meeting Rooms II | 05-Merge-Intervals/ |
| LC 21 Merge Two Sorted Lists | 07-Linked-List-Reversal/ |
| LC 226 Invert Binary Tree | 09-DFS/ |
| LC 100 Same Tree | 09-DFS/ |
| LC 39 Combination Sum | 11-Backtracking-Subsets/ |
| LC 46 Permutations | 11-Backtracking-Subsets/ |
| LC 704 Binary Search | 12-Binary-Search/ |
| LC 70 Climbing Stairs | 14-Dynamic-Programming/ |
| LC 322 Coin Change | 14-Dynamic-Programming/ |
| LC 62 Unique Paths | 14-Dynamic-Programming/ |
| LC 300 LIS | 14-Dynamic-Programming/ |