π― Interview Preparation DSA & System Design
From zero to offer. Data structures, algorithms, system design, and behavioral all free resources.
π Table of Contents
πΊοΈ DSA Roadmap (Zero to One)
Phase 1: Foundations (Week 1-4)
Phase 2: Core Data Structures (Week 5-8)
Phase 3: Algorithms (Week 9-12)
Phase 4: Advanced & Patterns (Week 13-16)
π Popular Problem Lists
Blind 75 (The OG List)
The original 75 problems that cover all major patterns. Start here if you have limited time.
| # |
Topic |
Problem |
LeetCode |
| 1 |
Array |
Two Sum |
#1 |
| 2 |
Array |
Best Time to Buy and Sell Stock |
#121 |
| 3 |
Array |
Contains Duplicate |
#217 |
| 4 |
Array |
Product of Array Except Self |
#238 |
| 5 |
Array |
Maximum Subarray |
#53 |
| 6 |
Array |
Maximum Product Subarray |
#152 |
| 7 |
Array |
Find Minimum in Rotated Sorted Array |
#153 |
| 8 |
Array |
Search in Rotated Sorted Array |
#33 |
| 9 |
Array |
3Sum |
#15 |
| 10 |
Array |
Container With Most Water |
#11 |
| 11 |
Binary |
Sum of Two Integers |
#371 |
| 12 |
Binary |
Number of 1 Bits |
#191 |
| 13 |
Binary |
Counting Bits |
#338 |
| 14 |
Binary |
Missing Number |
#268 |
| 15 |
Binary |
Reverse Bits |
#190 |
| 16 |
DP |
Climbing Stairs |
#70 |
| 17 |
DP |
Coin Change |
#322 |
| 18 |
DP |
Longest Increasing Subsequence |
#300 |
| 19 |
DP |
Longest Common Subsequence |
#1143 |
| 20 |
DP |
Word Break |
#139 |
| 21 |
DP |
Combination Sum IV |
#377 |
| 22 |
DP |
House Robber |
#198 |
| 23 |
DP |
House Robber II |
#213 |
| 24 |
DP |
Decode Ways |
#91 |
| 25 |
DP |
Unique Paths |
#62 |
| 26 |
DP |
Jump Game |
#55 |
| 27 |
Graph |
Clone Graph |
#133 |
| 28 |
Graph |
Course Schedule |
#207 |
| 29 |
Graph |
Pacific Atlantic Water Flow |
#417 |
| 30 |
Graph |
Number of Islands |
#200 |
| 31 |
Graph |
Longest Consecutive Sequence |
#128 |
| 32 |
Interval |
Insert Interval |
#57 |
| 33 |
Interval |
Merge Intervals |
#56 |
| 34 |
Interval |
Non-overlapping Intervals |
#435 |
| 35 |
Linked List |
Reverse Linked List |
#206 |
| 36 |
Linked List |
Detect Cycle |
#141 |
| 37 |
Linked List |
Merge Two Sorted Lists |
#21 |
| 38 |
Linked List |
Merge K Sorted Lists |
#23 |
| 39 |
Linked List |
Remove Nth Node From End |
#19 |
| 40 |
Linked List |
Reorder List |
#143 |
| 41 |
Matrix |
Set Matrix Zeroes |
#73 |
| 42 |
Matrix |
Spiral Matrix |
#54 |
| 43 |
Matrix |
Rotate Image |
#48 |
| 44 |
Matrix |
Word Search |
#79 |
| 45 |
String |
Longest Substring Without Repeating |
#3 |
| 46 |
String |
Longest Repeating Character Replacement |
#424 |
| 47 |
String |
Minimum Window Substring |
#76 |
| 48 |
String |
Valid Anagram |
#242 |
| 49 |
String |
Group Anagrams |
#49 |
| 50 |
String |
Valid Parentheses |
#20 |
| 51 |
String |
Longest Palindromic Substring |
#5 |
| 52 |
String |
Palindromic Substrings |
#647 |
| 53 |
String |
Encode and Decode Strings |
#271 |
| 54 |
Tree |
Maximum Depth of Binary Tree |
#104 |
| 55 |
Tree |
Same Tree |
#100 |
| 56 |
Tree |
Invert Binary Tree |
#226 |
| 57 |
Tree |
Binary Tree Maximum Path Sum |
#124 |
| 58 |
Tree |
Binary Tree Level Order Traversal |
#102 |
| 59 |
Tree |
Serialize and Deserialize Binary Tree |
#297 |
| 60 |
Tree |
Subtree of Another Tree |
#572 |
| 61 |
Tree |
Construct Binary Tree from Preorder and Inorder |
#105 |
| 62 |
Tree |
Validate BST |
#98 |
| 63 |
Tree |
Kth Smallest Element in BST |
#230 |
| 64 |
Tree |
LCA of BST |
#235 |
| 65 |
Tree |
Implement Trie |
#208 |
| 66 |
Tree |
Word Search II |
#212 |
| 67 |
Heap |
Top K Frequent Elements |
#347 |
| 68 |
Heap |
Find Median from Data Stream |
#295 |
Full Blind 75 list: leetcode.com/discuss/general-discussion/460599
NeetCode 150
An expanded version of Blind 75 with better coverage. Organized by pattern.
Full list with video explanations: neetcode.io/practice
| Category |
Count |
Key Problems |
| Arrays & Hashing |
9 |
Two Sum, Group Anagrams, Top K Frequent |
| Two Pointers |
5 |
Valid Palindrome, 3Sum, Container With Most Water |
| Sliding Window |
6 |
Best Time to Buy Stock, Longest Substring, Min Window |
| Stack |
7 |
Valid Parentheses, Min Stack, Daily Temperatures |
| Binary Search |
7 |
Search Rotated Array, Koko Eating Bananas, Median of Two |
| Linked List |
11 |
Reverse, Merge Two, Reorder, LRU Cache |
| Trees |
15 |
Max Depth, Invert, Level Order, Serialize, Validate BST |
| Tries |
3 |
Implement Trie, Word Search II, Design Add/Search |
| Heap / Priority Queue |
7 |
Kth Largest, Top K Frequent, Find Median |
| Backtracking |
9 |
Subsets, Permutations, Combination Sum, N-Queens |
| Graphs |
13 |
Number of Islands, Clone Graph, Course Schedule, Dijkstra |
| Advanced Graphs |
6 |
Alien Dictionary, Min Cost to Connect, Network Delay |
| 1-D DP |
12 |
Climbing Stairs, House Robber, Longest Palindromic |
| 2-D DP |
11 |
Unique Paths, LCS, Edit Distance, Coin Change II |
| Greedy |
8 |
Jump Game, Gas Station, Hand of Straights |
| Intervals |
6 |
Insert Interval, Merge Intervals, Meeting Rooms |
| Math & Geometry |
8 |
Rotate Image, Spiral Matrix, Pow(x,n) |
| Bit Manipulation |
7 |
Single Number, Counting Bits, Reverse Bits |
Striver's SDE Sheet (191 Problems)
The most comprehensive Indian-origin DSA sheet. Covers everything from basics to advanced.
Full sheet: takeuforward.org/strivers-sde-sheet
| Day |
Topic |
Key Problems |
| 1 |
Arrays |
Set Matrix Zeroes, Pascal's Triangle, Next Permutation |
| 2 |
Arrays |
Kadane's Algorithm, Sort 0/1/2, Stock Buy & Sell |
| 3 |
Arrays/Math |
Pow(x,n), Majority Element, Grid Unique Paths |
| 4 |
Arrays |
2-Sum, 4-Sum, Longest Consecutive Sequence |
| 5 |
Linked List |
Reverse, Middle, Merge Two Sorted, Add Two Numbers |
| 6 |
Linked List |
Intersection, Detect Cycle, Reverse in Groups of K |
| 7 |
Linked List |
Rotate, Clone with Random Pointer, Flatten |
| 8 |
Greedy |
N Meetings, Job Sequencing, Fractional Knapsack |
| 9 |
Recursion |
Subset Sum, Combination Sum, Palindrome Partitioning |
| 10 |
Recursion/Backtracking |
Permutations, N-Queens, Sudoku Solver, M-Coloring |
| 11 |
Binary Search |
Nth Root, Median of 2 Sorted Arrays, Search Rotated |
| 12 |
Heaps |
Kth Largest, Max Heap, Merge K Sorted, Top K Frequent |
| 13 |
Stack & Queue |
Implement Stack using Queue, BFS, Next Greater Element |
| 14 |
Stack & Queue |
LRU Cache, LFU Cache, Sliding Window Maximum |
| 15-18 |
Strings |
Reverse Words, KMP, Rabin-Karp, Z-Algorithm |
| 19-21 |
Binary Trees |
Traversals, Diameter, LCA, Serialize, Morris Traversal |
| 22-23 |
BST |
Search, Insert, Delete, Floor/Ceil, Kth Smallest |
| 24-26 |
Graphs |
BFS, DFS, Topo Sort, Dijkstra, Bellman-Ford, Floyd-Warshall |
| 27 |
Trie |
Implement, Word Search, Distinct Substrings |
| 28-30 |
DP |
0/1 Knapsack, LCS, LIS, Matrix Chain, Edit Distance |
Video solutions (Striver's A2Z): youtube.com/@takeUforward
Other Curated Lists
π Topic-Wise DSA Breakdown
Arrays & Hashing
Trees & Graphs
Dynamic Programming
Binary Search
ποΈ System Design
Fundamentals (Start Here)
Core Concepts to Master
| Concept |
Resource |
Link |
| Load Balancing |
System Design Primer |
Load Balancer |
| Caching |
System Design Primer |
Cache |
| Database Sharding |
Gaurav Sen |
YouTube |
| CAP Theorem |
ByteByteGo |
YouTube |
| Consistent Hashing |
Gaurav Sen |
YouTube |
| Message Queues |
Hussein Nasser |
YouTube |
| CDN |
ByteByteGo |
YouTube |
| API Design (REST/gRPC) |
Hussein Nasser |
YouTube |
| Rate Limiting |
System Design Primer |
Rate Limiter |
| Database Indexing |
Hussein Nasser |
YouTube |
Classic System Design Problems
System Design Reading (Free)
π£οΈ Behavioral & Leadership
Frameworks
| Framework |
Use For |
Key |
| STAR |
Behavioral questions |
Situation β Task β Action β Result |
| CIRCLES |
Product design |
Comprehend β Identify β Report β Cut β List β Evaluate β Summarize |
| SPADE |
Decision-making |
Setting β People β Alternatives β Decide β Explain |
Common Behavioral Questions
| Category |
Example Questions |
| Leadership |
"Tell me about a time you led a project with ambiguity" |
| Conflict |
"Describe a disagreement with a teammate and how you resolved it" |
| Failure |
"Tell me about a time you failed and what you learned" |
| Impact |
"What's the most impactful project you've worked on?" |
| Growth |
"How do you stay current with technology?" |
| Trade-offs |
"Describe a time you had to make a difficult technical decision" |
Resources
ποΈ Mock Interviews & Practice
Competitive Programming (for speed)
π» Language-Specific Prep
C++ for Interviews
Python for Interviews
Java for Interviews
π
Study Plans
1 Month Plan (Crunch Mode)
Week 1: Arrays, Strings, Hashing, Two Pointers (Blind 75: 1-15)
Week 2: Trees, Graphs, BFS/DFS (Blind 75: 27-40, 54-66)
Week 3: DP, Binary Search, Backtracking (Blind 75: 16-26)
Week 4: System Design (5 problems) + Behavioral (5 stories)
3 Month Plan (Thorough)
Month 1: NeetCode 150 (all topics, 2-3 problems/day)
Month 2: Striver SDE Sheet (fill gaps) + System Design fundamentals
Month 3: Mock interviews + System Design problems + Company-specific prep
6 Month Plan (Zero to Hero)
Month 1-2: DSA foundations (Phase 1-2 from roadmap above)
Month 3-4: Algorithms + patterns (Phase 3-4) + NeetCode 150
Month 5: System Design (all core concepts + 10 design problems)
Month 6: Mock interviews + Behavioral + Company-specific + Revision
π― Tips from the Trenches
- Pattern recognition > problem count 100 problems with patterns understood beats 500 problems brute-forced
- Explain while coding Practice talking through your approach out loud
- Time yourself 20 min for Easy, 30 min for Medium, 45 min for Hard
- Review, don't just solve After solving, read the top-voted discussion solutions
- Spaced repetition Revisit solved problems after 3 days, 7 days, 14 days
- System design is about trade-offs There's no "correct" answer, only justified decisions
- Behavioral is not optional Many candidates fail here, not on DSA
π From Learning Log
| Course |
Platform |
Link |
| System Design for Beginners |
Neetcode |
neetcode.io |
| System Design Interview |
Neetcode |
neetcode.io |
| Algorithms and Data Structures for Beginners |
Neetcode |
neetcode.io |
| Advanced Algorithms |
Neetcode |
neetcode.io |
| Grokking Algorithms (Book) |
Manning |
Manning |
"Interviews test your ability to think under pressure, communicate clearly, and solve problems systematically. Practice all three."