PPrepLearn
Progress Β· 0/6 phases

πŸ—“οΈ πŸ—“οΈ All 90 Days Reference β€” DSA Roadmap

8 min read Β· Notion

Every day has a specific deliverable: study the pattern, solve the listed problems, internalize the recognition trigger. Mark Done only when you can solve cold (no notes) in under 20 minutes.


Phase 1 β€” Foundations (Days 1–15)

DayPatternProblems to Solve
1Prefix Sum basicsRunning Sum of 1D Array, Find Pivot Index
2Prefix Sum + HashMapSubarray Sum Equals K, Range Sum Query
3Prefix ProductProduct of Array Except Self
4Two Pointers basicsTwo Sum II, Valid Palindrome
5Two Pointers advanced3Sum, Container With Most Water
6Two Pointers hardTrapping Rain Water, Sort Colors
7Sliding Window fixedBest Time to Buy/Sell Stock, Max Average Subarray
8Sliding Window variableLongest Substring No Repeat, Permutation in String
9Sliding Window hardMinimum Window Substring, Longest Repeating Char Replace
10Binary Search basicsBinary Search, Search a 2D Matrix
11Binary Search on rotatedFind Min in Rotated Array, Search in Rotated Array
12Binary Search on answerKoko Eating Bananas, Capacity to Ship Packages
13Sort + GreedyMerge Intervals, Non-Overlapping Intervals
14Sort + HeapMeeting Rooms II
15Phase 1 ReviewSliding Window Maximum, Split Array Largest Sum (timed mock)

Phase 2 β€” Core Data Structures (Days 16–35)

DayPatternProblems to Solve
16Linked List basicsReverse Linked List, Merge Two Sorted Lists
17Fast/Slow PointerLinked List Cycle, Linked List Cycle II
18Linked List manipulationRemove Nth From End, Reorder List
19Linked List hardMerge K Sorted Lists, Copy List with Random Pointer
20Stack basicsValid Parentheses, Min Stack
21Monotonic StackDaily Temperatures, Evaluate RPN
22Monotonic Stack hardLargest Rectangle in Histogram
23HashMap basicsTwo Sum, Valid Anagram
24HashMap intermediateGroup Anagrams, Top K Frequent Elements
25HashMap hardLongest Consecutive Sequence, Design HashMap
26Tree DFS basicsMaximum Depth, Invert Binary Tree, Same Tree
27Tree DFS validationValidate BST, Diameter of Binary Tree
28Tree DFS LCALowest Common Ancestor of BST
29Tree BFSBinary Tree Level Order Traversal, Right Side View
30Tree constructionConstruct Tree from Preorder/Inorder
31Tree hardBinary Tree Maximum Path Sum, Kth Smallest in BST
32Tree serializationSerialize/Deserialize Binary Tree
33Monotonic DequeSliding Window Maximum
34Queue designDesign Circular Queue, Number of Recent Calls
35Phase 2 Review8-problem timed mock (mixed patterns)

Phase 3 β€” Advanced Data Structures (Days 36–55)

DayPatternProblems to Solve
36Heap basicsKth Largest Element, Last Stone Weight
37Heap Top-KK Closest Points to Origin, Top K Frequent
38Heap + GreedyTask Scheduler
39Two HeapsFind Median from Data Stream
40Heap hardMerge K Sorted Lists
41Graph DFSNumber of Islands, Clone Graph
42Graph DFS gridPacific Atlantic Water Flow, Surrounded Regions
43Topological SortCourse Schedule, Course Schedule II
44Graph BFSWord Ladder, Rotting Oranges
45Graph reviewGraph Valid Tree
46DijkstraNetwork Delay Time
47Dijkstra + stateCheapest Flights Within K Stops
48Dijkstra/Binary SearchPath with Minimum Effort
49Bellman-Ford conceptPath with Maximum Probability
50Union-Find basicsNumber of Connected Components
51Union-Find intermediateRedundant Connection, Number of Provinces
52Union-Find hardAccounts Merge
53Trie basicsImplement Trie, Design Add and Search Words
54Trie hardWord Search II
55Phase 3 Review5-problem timed mock (Heap/Graph/UnionFind/Trie)

Phase 4 β€” Core Algorithms (Days 56–75)

DayPatternProblems to Solve
56Backtracking basicsSubsets, Permutations
57Backtracking comboCombination Sum, Generate Parentheses
58Backtracking constraintN-Queens
59Backtracking gridWord Search
60Backtracking partitionPalindrome Partitioning
61DP 1D basicsClimbing Stairs, House Robber
62DP 1D intermediateHouse Robber II, Coin Change
63DP 1D LISLongest Increasing Subsequence (both O(n^2) and O(n log n))
64DP 1D stringsWord Break, Decode Ways, Max Product Subarray
65DP GridUnique Paths, Minimum Path Sum
66DP 0/1 KnapsackPartition Equal Subset Sum
67DP Two StringsLongest Common Subsequence
68DP Two Strings hardEdit Distance, Coin Change II
69Greedy basicsJump Game, Jump Game II
70Greedy intermediateGas Station, Partition Labels
71Greedy intervalsNon-overlapping Intervals
72Divide and ConquerMerge Sort (Sort an Array)
73Divide and Conquer Quick SelectKth Largest Element via Quick Select
74D&C / ClassicMaximum Subarray, Majority Element
75Phase 4 Review6-problem timed mock (Backtrack/DP/Greedy mixed)

Phase 5 β€” Advanced & Interview Prep (Days 76–90)

DayPatternProblems to Solve
76Bitmask DP basicsPartition to K Equal Sum Subsets
77Bitmask DP + BFSShortest Path Visiting All Nodes
78Bitmask DP hardFind the Shortest Superstring
79Interval DPBurst Balloons
80Interval DP hardMinimum Cost to Merge Stones
81State Machine DPBest Time to Buy/Sell with Cooldown + Fee
82MST Prim'sMin Cost to Connect All Points
83MST Kruskal'sConnecting Cities with Minimum Cost
84Dijkstra advancedSwim in Rising Water
85Design problemsLRU Cache, LFU Cache
86Mock Interview 12 medium problems, Arrays/Strings/Two Pointer, full 35-min process
87Mock Interview 22 medium problems, Trees/Graphs, full 35-min process
88Mock Interview 32 medium-hard DP problems, full 35-min process
89Mock Interview 41 easy + 1 hard, full 45-min interview simulation
90Final ReviewRe-solve 10 problems cold across all patterns. Write your own pattern cheat sheet.

Daily ritual

  1. Open this table. Find today's row.
  2. Read the pattern explanation in the phase page before coding.
  3. Solve each listed problem WITHOUT looking at the solution first (give it 20-25 min).
  4. If stuck: look at the pattern hint only, not the full solution. Try again.
  5. After solving (or after seeing the solution): re-type the solution from scratch without copying.
  6. Log in tracker: Problems solved, Solved without hints, Time taken, Key insight.
  7. Any problem you couldn't solve cold goes in Problems to revisit β€” redo it in 3 days.

Related