If you're preparing for coding interviews at top tech companies, you've probably heard of the Blind 75. It's a curated list of 75 LeetCode problems that covers every major algorithmic pattern tested in FAANG and top-tier startup interviews. In this guide, we organize all 75 problems by pattern rather than by topic — so you build transferable problem-solving skills instead of memorizing solutions.
What Is the Blind 75?
The Blind 75 list originated from a viral post on the anonymous forum Blind in 2018. A tech professional curated 75 LeetCode problems that, taken together, cover the most common patterns and data structures you'll encounter in a real coding interview. The list became the de facto study plan for thousands of engineers targeting Google, Meta, Amazon, Apple, Netflix, and Microsoft.
Why did it go viral? Because LeetCode has over 3,000 problems, and most candidates don't have unlimited time to grind. The Blind 75 distills those thousands of problems down to a maximum-coverage, minimum-effort set. If you can solve all 75, you've practiced every pattern that matters. Companies keep rotating problems, but they rarely rotate patterns.
Why a Pattern-Based Approach Beats Memorization
Many candidates try to memorize solutions. They see "Merge Intervals," recall the answer, and move on. The problem? Interviewers rarely ask the exact same question. They tweak constraints, add follow-ups, or combine two patterns into one question. If you only memorized the answer, you're stuck.
A pattern-based approach means you learn the underlying technique — Two Pointers, Sliding Window, DFS, Topological Sort — and then recognize which technique applies to any new problem. This is exactly how top engineers think during interviews: they scan the constraints, identify the pattern, and apply a template they already know.
- Memorization: works for the exact problem, fails on variants.
- Patterns: works on the problem AND every variant you'll ever see.
AlgoArk's pattern library and decision tree are built around this philosophy: learn the pattern first, then practice problems that use it.
All 75 Problems Organized by Pattern
Below, every Blind 75 problem is grouped by the algorithmic pattern it primarily tests. Click any pattern name to see the full template, explanation, and more practice problems on AlgoArk. We've mapped 75 entries across 26 patterns.
| # | Problem | Difficulty |
|---|
| 1 | Two Sum | Easy |
| 15 | 3Sum | Medium |
| 11 | Container With Most Water | Medium |
| 125 | Valid Palindrome | Easy |
| 42 | Trapping Rain Water | Hard |
| # | Problem | Difficulty |
|---|
| 3 | Longest Substring Without Repeating Characters | Medium |
| 424 | Longest Repeating Character Replacement | Medium |
| 76 | Minimum Window Substring | Hard |
| 121 | Best Time to Buy and Sell Stock | Easy |
| # | Problem | Difficulty |
|---|
| 153 | Find Minimum in Rotated Sorted Array | Medium |
| 33 | Search in Rotated Sorted Array | Medium |
| # | Problem | Difficulty |
|---|
| 217 | Contains Duplicate | Easy |
| 242 | Valid Anagram | Easy |
| 49 | Group Anagrams | Medium |
| 347 | Top K Frequent Elements | Medium |
| 271 | Encode and Decode Strings | Medium |
| # | Problem | Difficulty |
|---|
| 53 | Maximum Subarray | Medium |
| 152 | Maximum Product Subarray | Medium |
| 238 | Product of Array Except Self | Medium |
| # | Problem | Difficulty |
|---|
| 56 | Merge Intervals | Medium |
| 57 | Insert Interval | Medium |
| 435 | Non-overlapping Intervals | Medium |
| # | Problem | Difficulty |
|---|
| 206 | Reverse Linked List | Easy |
| 21 | Merge Two Sorted Lists | Easy |
| 143 | Reorder List | Medium |
| 19 | Remove Nth Node From End of List | Medium |
| # | Problem | Difficulty |
|---|
| 141 | Linked List Cycle | Easy |
| # | Problem | Difficulty |
|---|
| 102 | Binary Tree Level Order Traversal | Medium |
| # | Problem | Difficulty |
|---|
| 104 | Maximum Depth of Binary Tree | Easy |
| 100 | Same Tree | Easy |
| 226 | Invert Binary Tree | Easy |
| 572 | Subtree of Another Tree | Easy |
| 98 | Validate Binary Search Tree | Medium |
| 230 | Kth Smallest Element in a BST | Medium |
| 235 | Lowest Common Ancestor of a BST | Medium |
| 105 | Construct Binary Tree from Preorder and Inorder | Medium |
| 297 | Serialize and Deserialize Binary Tree | Hard |
| 200 | Number of Islands | Medium |
| 417 | Pacific Atlantic Water Flow | Medium |
| 133 | Clone Graph | Medium |
| # | Problem | Difficulty |
|---|
| 207 | Course Schedule | Medium |
| 269 | Alien Dictionary | Hard |
| # | Problem | Difficulty |
|---|
| 323 | Number of Connected Components in an Undirected Graph | Medium |
| 261 | Graph Valid Tree | Medium |
| 128 | Longest Consecutive Sequence | Medium |
| # | Problem | Difficulty |
|---|
| 39 | Combination Sum | Medium |
| 79 | Word Search | Medium |
| # | Problem | Difficulty |
|---|
| 208 | Implement Trie (Prefix Tree) | Medium |
| 211 | Design Add and Search Words Data Structure | Medium |
| 212 | Word Search II | Hard |
| # | Problem | Difficulty |
|---|
| 295 | Find Median from Data Stream | Hard |
| # | Problem | Difficulty |
|---|
| 23 | Merge K Sorted Lists | Hard |
| # | Problem | Difficulty |
|---|
| 70 | Climbing Stairs | Easy |
| 198 | House Robber | Medium |
| 213 | House Robber II | Medium |
| 91 | Decode Ways | Medium |
| 55 | Jump Game | Medium |
| 139 | Word Break | Medium |
| # | Problem | Difficulty |
|---|
| 416 | Partition Equal Subset Sum | Medium |
| # | Problem | Difficulty |
|---|
| 322 | Coin Change | Medium |
| # | Problem | Difficulty |
|---|
| 1143 | Longest Common Subsequence | Medium |
| 300 | Longest Increasing Subsequence | Medium |
| # | Problem | Difficulty |
|---|
| 62 | Unique Paths | Medium |
| # | Problem | Difficulty |
|---|
| 124 | Binary Tree Maximum Path Sum | Hard |
| # | Problem | Difficulty |
|---|
| 371 | Sum of Two Integers | Medium |
| 191 | Number of 1 Bits | Easy |
| 338 | Counting Bits | Easy |
| 268 | Missing Number | Easy |
| 190 | Reverse Bits | Easy |
| # | Problem | Difficulty |
|---|
| 739 | Daily Temperatures | Medium |
| # | Problem | Difficulty |
|---|
| 252 | Meeting Rooms | Easy |
| 253 | Meeting Rooms II | Medium |
Matrix
| # | Problem | Difficulty |
|---|
| 73 | Set Matrix Zeroes | Medium |
| 54 | Spiral Matrix | Medium |
| 48 | Rotate Image | Medium |
Suggested Study Order
Don't attempt the Blind 75 in random order. The patterns build on each other. Follow this sequence to maximize your learning curve:
- Two Pointers — Start here. Two Pointers is the most intuitive pattern: sort the array, use two indices, and converge. Covers 5 Blind 75 problems and builds the mental model for Sliding Window.
- Sliding Window — An extension of Two Pointers for subarray/substring problems. Once you're comfortable with two pointers, the window variants feel natural.
- Hash Map / Counting — Frequency counting, grouping, and duplicate detection. These are quick-win problems that reinforce fundamentals.
- Binary Search — Rotated arrays, search space reduction. Only 2 Blind 75 problems but the pattern transfers to dozens of follow-ups.
- Merge Intervals — Sort by start, merge overlapping. Quick to learn, frequently tested.
- Linked List Reversal & Fast-Slow Pointers — Classic linked list manipulation. 5 problems, all follow a template.
- DFS & BFS — The largest group. Tree traversals, graph exploration, island counting. Master recursive DFS first, then BFS for level-order problems.
- Topological Sort & Union Find — Graph patterns that build on DFS/BFS. Course Schedule, connected components, and graph validation.
- Backtracking — Combination Sum and Word Search. Template-based: choose → explore → unchoose.
- Dynamic Programming — Start with Fibonacci DP (Climbing Stairs, House Robber), then move to 0/1 Knapsack, Unbounded Knapsack, LCS, and Grid DP. DP has the steepest learning curve, so tackle it after you're comfortable with recursion from the DFS/backtracking phases.
- Trie, Two Heaps, Top K, Bit Manipulation — Advanced patterns. Save these for last. They each cover 1–5 problems and require specialized knowledge.
How to Use AlgoArk Alongside the Blind 75
AlgoArk was designed to complement problem lists like the Blind 75. Here's the recommended workflow:
- Learn the pattern first. Visit the pattern page for the group you're studying. Read the template, understand the time/space complexity, and review the visual walkthrough.
- Attempt the Blind 75 problems from that pattern group on LeetCode. Spend 20–30 minutes per problem before looking at hints.
- Use the Decision Tree if you're stuck on which pattern applies. Answer a few questions about the problem constraints and the tree tells you which pattern to try.
- Test your recall with the Pattern Quiz. It gives you a problem description and asks you to identify the correct pattern. Great for spaced repetition.
- Review the Cheatsheet before interviews. It's a one-page reference with every pattern, its trigger signals, and its template pseudocode.
Blind 75 at a Glance
The distribution skews toward Medium problems because that's the difficulty most commonly seen in real interviews. Easy problems serve as warm-ups for each pattern, while Hard problems test mastery.
Tips for Completing the Blind 75 Efficiently
- Time-box each problem. Spend at most 30 minutes before looking at the pattern template. It's better to learn the pattern and re-attempt than to waste hours.
- Solve in batches by pattern. Finish all problems in one pattern before moving to the next. This builds deep familiarity.
- Explain your approach out loud. Read our guide on how to explain your approach to an interviewer. Practicing verbalization is just as important as coding.
- Track your progress. Use AlgoArk's dashboard to mark patterns as learned and monitor your weak areas.
- Revisit problems after 1 week. Spaced repetition is scientifically proven to improve retention. Solve each problem at least twice with a gap between attempts.
Related Reads
Ready to crush the Blind 75?
Use AlgoArk's cheatsheet and pattern quiz to lock in every pattern before your next interview.