135-Day DSA Roadmap
Schedule:
• Monday to Friday: New topics and problems (2 hours per day)
• Saturday: Weekly revision (review key/tough problems from the week)
• Sunday: Rest day
Week 1: Arrays & Basic Concepts (Days 1-7)
Day 1 (Monday):
Topic: Arrays Basics – Declaration, iteration, in-place update
Problems:
• "Find the Highest Altitude" : [https://leetcode.com/problems/find-the-
highest-altitude/]
• "Running Sum of 1d Array" : [https://leetcode.com/problems/running-
sum-of-1d-array/]
• "Richest Customer Wealth" : [https://leetcode.com/problems/richest-
customer-wealth/]
Day 2 (Tuesday):
Topic: Prefix Sum & Difference Array
Problems:
• "Subarray Sum Equals K" : [https://leetcode.com/problems/subarray-
sum-equals-k/]
• "Range Sum Query - Immutable" : [https://leetcode.com/problems/
range-sum-query-immutable/]
• "Find Pivot Index" : [https://leetcode.com/problems/find-pivot-index/]
Day 3 (Wednesday):
Topic: Two Pointers Technique
Problems:
• "Two Sum II - Input Array Is Sorted" : [https://leetcode.com/problems/
two-sum-ii-input-array-is-sorted/]
• "Squares of a Sorted Array" : [https://leetcode.com/problems/squares-
of-a-sorted-array/]
• "Reverse String" : [https://leetcode.com/problems/reverse-string/]
Day 4 (Thursday):
Topic: Fixed-Size Sliding Window
Problems:
• "Maximum Average Subarray I" : [https://leetcode.com/problems/
maximum-average-subarray-i/]
• "Max Consecutive Ones III" : [https://leetcode.com/problems/max-
consecutive-ones-iii/]
• "Best Time to Buy and Sell Stock" : [https://leetcode.com/problems/
best-time-to-buy-and-sell-stock/]
Day 5 (Friday):
Topic: Variable-Size Sliding Window
Problems:
• "Longest Substring Without Repeating Characters" : [https://
leetcode.com/problems/longest-substring-without-repeating-
characters/]
• "Minimum Size Subarray Sum" : [https://leetcode.com/problems/
minimum-size-subarray-sum/]
• "Fruit Into Baskets" : [https://leetcode.com/problems/fruit-into-baskets/]
Day 6 (Saturday – Revision):
Revision: Re-solve 3 key problems from the week (e.g., "Find the Highest
Altitude", "Two Sum II", "Longest Substring Without Repeating Characters")
and review solution approaches.
Day 7 (Sunday – Rest):
Rest Day
Week 2: Arrays & Intro to Strings (Days 8-14)
Day 8 (Monday):
Topic: Advanced Arrays – Merging, Intervals, and Searching
Problems:
• "Merge Intervals" : [https://leetcode.com/problems/merge-intervals/]
• "Insert Interval" : [https://leetcode.com/problems/insert-interval/]
• "Meeting Rooms" : [https://leetcode.com/problems/meeting-rooms/]
Day 9 (Tuesday):
Topic: Introduction to Strings – Basics
Problems:
• "Valid Palindrome" : [https://leetcode.com/problems/valid-palindrome/]
• "Longest Common Prefix" : [https://leetcode.com/problems/longest-
common-prefix/]
• "Implement strStr()" : [https://leetcode.com/problems/implement-
strstr/]
Day 10 (Wednesday):
Topic: Character Frequency & String Traversal
Problems:
• "First Unique Character in a String" : [https://leetcode.com/problems/
first-unique-character-in-a-string/]
• "Valid Anagram" : [https://leetcode.com/problems/valid-anagram/]
• "Anagram Mapping" : [https://leetcode.com/problems/anagram-
mapping/]
Day 11 (Thursday):
Topic: String Manipulation & Palindromes
Problems:
• "Longest Palindromic Substring" : [https://leetcode.com/problems/
longest-palindromic-substring/]
• "Palindrome Partitioning" : [https://leetcode.com/problems/palindrome-
partitioning/]
• "Palindrome Permutation" : [https://leetcode.com/problems/palindrome-
permutation/]
Day 12 (Friday):
Topic: String Building & Substrings
Problems:
• "Count and Say" : [https://leetcode.com/problems/count-and-say/]
• "Group Anagrams" : [https://leetcode.com/problems/group-anagrams/]
• "Ransom Note" : [https://leetcode.com/problems/ransom-note/]
Day 13 (Saturday – Revision):
Revision: Re-solve problems such as "Merge Intervals", "Longest Common
Prefix", and "Longest Palindromic Substring". Review key string and array
strategies.
Day 14 (Sunday – Rest):
Rest Day
Week 3: Advanced Strings & Hashing (Days
15-21)
Day 15 (Monday):
Topic: Hashing Basics – Introduction to Hash Maps
Problems:
• "Two Sum" : [https://leetcode.com/problems/two-sum/]
• "Contains Duplicate" : [https://leetcode.com/problems/contains-
duplicate/]
• "Intersection of Two Arrays II" : [https://leetcode.com/problems/
intersection-of-two-arrays-ii/]
Day 16 (Tuesday):
Topic: Advanced Hashing Techniques
Problems:
• "Valid Sudoku" : [https://leetcode.com/problems/valid-sudoku/]
• "Happy Number" : [https://leetcode.com/problems/happy-number/]
• "Longest Consecutive Sequence" : [https://leetcode.com/problems/
longest-consecutive-sequence/]
Day 17 (Wednesday):
Topic: Combining Strings & Hash Maps
Problems:
• "Group Anagrams" : [https://leetcode.com/problems/group-anagrams/]
• "Isomorphic Strings" : [https://leetcode.com/problems/isomorphic-
strings/]
• "Ransom Note" : [https://leetcode.com/problems/ransom-note/]
Day 18 (Thursday):
Topic: Hashing – Frequency Counts & Subarrays
Problems:
• "Subarray Sum Equals K" : [https://leetcode.com/problems/subarray-
sum-equals-k/]
• "Find All Anagrams in a String" : [https://leetcode.com/problems/find-
all-anagrams-in-a-string/]
• "Minimum Window Substring" : [https://leetcode.com/problems/
minimum-window-substring/]
Day 19 (Friday):
Topic: Recap of Hashing Problems
Problems:
• "Top K Frequent Elements" : [https://leetcode.com/problems/top-k-
frequent-elements/]
• "Valid Anagram" : [https://leetcode.com/problems/valid-anagram/]
• "Intersection of Two Arrays" : [https://leetcode.com/problems/
intersection-of-two-arrays/]
Day 20 (Saturday – Revision):
Revision: Re-solve "Two Sum", "Valid Sudoku", and "Minimum Window
Substring". Analyze alternative approaches.
Day 21 (Sunday – Rest):
Rest Day
Week 4: Linked Lists & Intro to Recursion
(Days 22-28)
Day 22 (Monday):
Topic: Linked List Basics – Creation & Traversal
Problems:
• "Reverse Linked List" : [https://leetcode.com/problems/reverse-linked-
list/]
• "Middle of the Linked List" : [https://leetcode.com/problems/middle-of-
the-linked-list/]
• "Merge Two Sorted Lists" : [https://leetcode.com/problems/merge-two-
sorted-lists/]
Day 23 (Tuesday):
Topic: Linked Lists – Insertion, Deletion, Cycle Detection
Problems:
• "Linked List Cycle" : [https://leetcode.com/problems/linked-list-cycle/]
• "Remove Nth Node From End of List" : [https://leetcode.com/problems/
remove-nth-node-from-end-of-list/]
• "Intersection of Two Linked Lists" : [https://leetcode.com/problems/
intersection-of-two-linked-lists/]
Day 24 (Wednesday):
Topic: Advanced Linked List Problems
Problems:
• "Reorder List" : [https://leetcode.com/problems/reorder-list/]
• "Copy List with Random Pointer" : [https://leetcode.com/problems/copy-
list-with-random-pointer/]
• "Add Two Numbers" : [https://leetcode.com/problems/add-two-
numbers/]
Day 25 (Thursday):
Topic: Introduction to Recursion
Problems:
• "Factorial" (coding exercise – implement in Java)
• "Fibonacci Number" : [https://leetcode.com/problems/fibonacci-
number/]
• "Climbing Stairs" : [https://leetcode.com/problems/climbing-stairs/]
Day 26 (Friday):
Topic: More Recursion Problems
Problems:
• "Merge Sorted Array" (try a recursive approach) : [https://
leetcode.com/problems/merge-sorted-array/]
• "Power of Two" : [https://leetcode.com/problems/power-of-two/]
• "Binary Search" (recursive implementation) : [https://leetcode.com/
problems/binary-search/]
Day 27 (Saturday – Revision):
Revision: Revisit "Reverse Linked List", "Linked List Cycle", and "Climbing
Stairs". Emphasize understanding base cases in recursion.
Day 28 (Sunday – Rest):
Rest Day
Week 5: Stacks & Queues (Days 29-35)
Day 29 (Monday):
Topic: Introduction to Stacks
Problems:
• "Valid Parentheses" : [https://leetcode.com/problems/valid-
parentheses/]
• "Min Stack" : [https://leetcode.com/problems/min-stack/]
• "Daily Temperatures" : [https://leetcode.com/problems/daily-
temperatures/]
Day 30 (Tuesday):
Topic: Advanced Stack Operations
Problems:
• "Evaluate Reverse Polish Notation" : [https://leetcode.com/problems/
evaluate-reverse-polish-notation/]
• "Next Greater Element I" : [https://leetcode.com/problems/next-greater-
element-i/]
• "Next Greater Element II" : [https://leetcode.com/problems/next-
greater-element-ii/]
Day 31 (Wednesday):
Topic: Queues – Basics & Circular Queue Concepts
Problems:
• "Design Circular Queue" : [https://leetcode.com/problems/design-
circular-queue/]
• "Moving Average from Data Stream" : [https://leetcode.com/problems/
moving-average-from-data-stream/]
• "Implement Queue using Stacks" : [https://leetcode.com/problems/
implement-queue-using-stacks/]
Day 32 (Thursday):
Topic: Queues – Priority Queue & Deque
Problems:
• "Sliding Window Maximum" : [https://leetcode.com/problems/sliding-
window-maximum/]
• "Design Hit Counter" : [https://leetcode.com/problems/design-hit-
counter/]
• "Number of Recent Calls" : [https://leetcode.com/problems/number-of-
recent-calls/]
Day 33 (Friday):
Topic: Mixed Practice on Stacks & Queues
Problems:
• "Largest Rectangle in Histogram" : [https://leetcode.com/problems/
largest-rectangle-in-histogram/]
• "Trapping Rain Water" : [https://leetcode.com/problems/trapping-rain-
water/]
• "Basic Calculator" : [https://leetcode.com/problems/basic-calculator/]
Day 34 (Saturday – Revision):
Revision: Re-solve "Valid Parentheses", "Design Circular Queue", and
"Sliding Window Maximum". Compare different solution approaches.
Day 35 (Sunday – Rest):
Rest Day
Week 6: Binary Search & Recursion Deep Dive
(Days 36-42)
Day 36 (Monday):
Topic: Binary Search Fundamentals
Problems:
• "Binary Search" : [https://leetcode.com/problems/binary-search/]
• "First Bad Version" : [https://leetcode.com/problems/first-bad-version/]
• "Search Insert Position" : [https://leetcode.com/problems/search-insert-
position/]
Day 37 (Tuesday):
Topic: Binary Search Variants
Problems:
• "Find Minimum in Rotated Sorted Array" : [https://leetcode.com/
problems/find-minimum-in-rotated-sorted-array/]
• "Search in Rotated Sorted Array" : [https://leetcode.com/problems/
search-in-rotated-sorted-array/]
• "Peak Index in a Mountain Array" : [https://leetcode.com/problems/
peak-index-in-a-mountain-array/]
Day 38 (Wednesday):
Topic: Advanced Binary Search Applications
Problems:
• "Kth Smallest Element in a Sorted Matrix" : [https://leetcode.com/
problems/kth-smallest-element-in-a-sorted-matrix/]
• "Capacity To Ship Packages Within D Days" : [https://leetcode.com/
problems/capacity-to-ship-packages-within-d-days/]
• "Aggressive Cows" (coding exercise – implement variant)
Day 39 (Thursday):
Topic: Combining Recursion & Binary Search
Problems:
• "Search a 2D Matrix" : [https://leetcode.com/problems/search-a-2d-
matrix/]
• "Search a 2D Matrix II" : [https://leetcode.com/problems/search-a-2d-
matrix-ii/]
• "Matrix Median" (coding exercise – apply binary search on answer)
Day 40 (Friday):
Topic: Mixed Practice: Recursion & Binary Search
Problems:
• "Pow(x, n)" : [https://leetcode.com/problems/powx-n/]
• "Sqrt(x)" : [https://leetcode.com/problems/sqrtx/]
• "Guess Number Higher or Lower" : [https://leetcode.com/problems/
guess-number-higher-or-lower/]
Day 41 (Saturday – Revision):
Revision: Re-solve "Binary Search", "Find Minimum in Rotated Sorted
Array", and "Pow(x, n)". Emphasize efficient recursion patterns.
Day 42 (Sunday – Rest):
Rest Day
Week 7: Binary Trees (Days 43-49)
Day 43 (Monday):
Topic: Introduction to Binary Trees & Traversals
Problems:
• "Maximum Depth of Binary Tree" : [https://leetcode.com/problems/
maximum-depth-of-binary-tree/]
• "Invert Binary Tree" : [https://leetcode.com/problems/invert-binary-
tree/]
• "Symmetric Tree" : [https://leetcode.com/problems/symmetric-tree/]
Day 44 (Tuesday):
Topic: Level Order Traversal
Problems:
• "Binary Tree Level Order Traversal" : [https://leetcode.com/problems/
binary-tree-level-order-traversal/]
• "Binary Tree Zigzag Level Order Traversal" : [https://leetcode.com/
problems/binary-tree-zigzag-level-order-traversal/]
• "Average of Levels in Binary Tree" : [https://leetcode.com/problems/
average-of-levels-in-binary-tree/]
Day 45 (Wednesday):
Topic: Inorder, Preorder, Postorder Traversals
Problems:
• "Binary Tree Inorder Traversal" : [https://leetcode.com/problems/
binary-tree-inorder-traversal/]
• "Binary Tree Preorder Traversal" : [https://leetcode.com/problems/
binary-tree-preorder-traversal/]
• "Binary Tree Postorder Traversal" : [https://leetcode.com/problems/
binary-tree-postorder-traversal/]
Day 46 (Thursday):
Topic: Constructing Binary Trees
Problems:
• "Construct Binary Tree from Preorder and Inorder Traversal" : [https://
leetcode.com/problems/construct-binary-tree-from-preorder-and-
inorder-traversal/]
• "Construct Binary Tree from Inorder and Postorder Traversal" : [https://
leetcode.com/problems/construct-binary-tree-from-inorder-and-
postorder-traversal/]
• "Binary Tree Maximum Path Sum" : [https://leetcode.com/problems/
binary-tree-maximum-path-sum/]
Day 47 (Friday):
Topic: Advanced Tree Problems
Problems:
• "Flatten Binary Tree to Linked List" : [https://leetcode.com/problems/
flatten-binary-tree-to-linked-list/]
• "Diameter of Binary Tree" : [https://leetcode.com/problems/diameter-of-
binary-tree/]
• "Path Sum" : [https://leetcode.com/problems/path-sum/]
Day 48 (Saturday – Revision):
Revision: Re-solve "Maximum Depth of Binary Tree", "Level Order
Traversal", and "Construct Binary Tree from Preorder and Inorder
Traversal". Focus on recursion in trees.
Day 49 (Sunday – Rest):
Rest Day
Week 8: Heaps & Priority Queues (Days 50-56)
Day 50 (Monday):
Topic: Introduction to Heaps
Problems:
• "Kth Largest Element in an Array" : [https://leetcode.com/problems/kth-
largest-element-in-an-array/]
• "Find Median from Data Stream" : [https://leetcode.com/problems/find-
median-from-data-stream/]
• "Top K Frequent Elements" : [https://leetcode.com/problems/top-k-
frequent-elements/]
Day 51 (Tuesday):
Topic: Heap Operations & Variants
Problems:
• "Merge k Sorted Lists" : [https://leetcode.com/problems/merge-k-
sorted-lists/]
• "Reorganize String" : [https://leetcode.com/problems/reorganize-
string/]
• "Task Scheduler" : [https://leetcode.com/problems/task-scheduler/]
Day 52 (Wednesday):
Topic: Advanced Heap Problems
Problems:
• "Find K Closest Elements" : [https://leetcode.com/problems/find-k-
closest-elements/]
• "Sliding Window Maximum" : [https://leetcode.com/problems/sliding-
window-maximum/]
• "Last Stone Weight" : [https://leetcode.com/problems/last-stone-
weight/]
Day 53 (Thursday):
Topic: Priority Queues & Real-Time Data
Problems:
• "Design Twitter" : [https://leetcode.com/problems/design-twitter/]
• "Data Stream as Disjoint Intervals" : [https://leetcode.com/problems/
data-stream-as-disjoint-intervals/]
• "Stream of Characters" : [https://leetcode.com/problems/stream-of-
characters/]
Day 54 (Friday):
Topic: Mixed Practice on Heaps
Problems:
• "Merge Intervals" (revisited with heap concepts) : [https://
leetcode.com/problems/merge-intervals/]
• "Sort Characters By Frequency" : [https://leetcode.com/problems/sort-
characters-by-frequency/]
• "Find Eventual Safe States" : [https://leetcode.com/problems/find-
eventual-safe-states/]
Day 55 (Saturday – Revision):
Revision: Re-solve "Kth Largest Element in an Array", "Merge k Sorted
Lists", and "Sliding Window Maximum". Focus on different heap strategies.
Day 56 (Sunday – Rest):
Rest Day
Week 9: Graphs Basics (Days 57-63)
Day 57 (Monday):
Topic: Graph Representation & Traversal
Problems:
• "Clone Graph" : [https://leetcode.com/problems/clone-graph/]
• "Number of Islands" : [https://leetcode.com/problems/number-of-
islands/]
• "Flood Fill" : [https://leetcode.com/problems/flood-fill/]
Day 58 (Tuesday):
Topic: Depth-First Search (DFS)
Problems:
• "Word Search" : [https://leetcode.com/problems/word-search/]
• "Surrounded Regions" : [https://leetcode.com/problems/surrounded-
regions/]
• "Graph Valid Tree" : [https://leetcode.com/problems/graph-valid-tree/]
Day 59 (Wednesday):
Topic: Breadth-First Search (BFS)
Problems:
• "Shortest Path in Binary Matrix" : [https://leetcode.com/problems/
shortest-path-in-binary-matrix/]
• "Walls and Gates" : [https://leetcode.com/problems/walls-and-gates/]
• "Minimum Genetic Mutation" : [https://leetcode.com/problems/
minimum-genetic-mutation/]
Day 60 (Thursday):
Topic: Graph Components & Connectivity
Problems:
• "Number of Connected Components in an Undirected Graph" : [https://
leetcode.com/problems/number-of-connected-components-in-an-
undirected-graph/]
• "Redundant Connection" : [https://leetcode.com/problems/redundant-
connection/]
• "Sequence Reconstruction" : [https://leetcode.com/problems/sequence-
reconstruction/]
Day 61 (Friday):
Topic: Graph Cycle Detection
Problems:
• "Course Schedule" : [https://leetcode.com/problems/course-schedule/]
• "Course Schedule II" : [https://leetcode.com/problems/course-schedule-
ii/]
• "Detect Cycle in Directed Graph" (coding exercise – implement using
DFS)
Day 62 (Saturday – Revision):
Revision: Re-solve "Clone Graph", "Word Search", and "Number of
Connected Components in an Undirected Graph". Emphasize DFS/BFS
differences.
Day 63 (Sunday – Rest):
Rest Day
Week 10: Graphs Advanced & Shortest Paths
(Days 64-70)
Day 64 (Monday):
Topic: Shortest Path – BFS/DFS Reinforcement
Problems:
• "Shortest Path in Binary Matrix" (revisited) : [https://leetcode.com/
problems/shortest-path-in-binary-matrix/]
• "Cheapest Flights Within K Stops" : [https://leetcode.com/problems/
cheapest-flights-within-k-stops/]
• "Network Delay Time" : [https://leetcode.com/problems/network-delay-
time/]
Day 65 (Tuesday):
Topic: Dijkstra’s Algorithm – Introduction
Problems:
• "Path with Minimum Effort" : [https://leetcode.com/problems/path-with-
minimum-effort/]
• "Swim in Rising Water" : [https://leetcode.com/problems/swim-in-rising-
water/]
• "Minimum Cost to Connect Sticks" : [https://leetcode.com/problems/
minimum-cost-to-connect-sticks/]
Day 66 (Wednesday):
Topic: Bellman-Ford Algorithm – Introduction
Problems:
• "Cheapest Flights Within K Stops" (revisited) : [https://leetcode.com/
problems/cheapest-flights-within-k-stops/]
• "Network Delay Time" (revisited) : [https://leetcode.com/problems/
network-delay-time/]
• "Distance Between Bus Stops" : [https://leetcode.com/problems/
distance-between-bus-stops/]
Day 67 (Thursday):
Topic: Advanced Shortest Path Problems
Problems:
• "Minimum Cost to Reach Destination in Time" (coding exercise –
implement Dijkstra with time constraints)
• "Redundant Connection II" : [https://leetcode.com/problems/redundant-
connection-ii/]
• "Bus Routes" : [https://leetcode.com/problems/bus-routes/]
Day 68 (Friday):
Topic: Mixed Graph Problems
Problems:
• "Keys and Rooms" : [https://leetcode.com/problems/keys-and-rooms/]
• "Escape the Ghosts" : [https://leetcode.com/problems/escape-the-
ghosts/]
• "Evaluate Division" : [https://leetcode.com/problems/evaluate-division/]
Day 69 (Saturday – Revision):
Revision: Re-solve "Clone Graph", "Shortest Path in Binary Matrix", and
"Path with Minimum Effort". Compare different shortest path strategies.
Day 70 (Sunday – Rest):
Rest Day
Week 11: Dynamic Programming (Basics)
(Days 71-77)
Day 71 (Monday):
Topic: Introduction to DP
Problems:
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
• "House Robber" : [https://leetcode.com/problems/house-robber/]
• "Maximum Subarray" : [https://leetcode.com/problems/maximum-
subarray/]
Day 72 (Tuesday):
Topic: DP – 0/1 Knapsack & Variants
Problems:
• "Subset Sum Problem" (coding exercise – implement basic knapsack)
• "Partition Equal Subset Sum" : [https://leetcode.com/problems/
partition-equal-subset-sum/]
• "Target Sum" : [https://leetcode.com/problems/target-sum/]
Day 73 (Wednesday):
Topic: DP – Fibonacci & Memoization
Problems:
• "Fibonacci Number" (revisited) : [https://leetcode.com/problems/
fibonacci-number/]
• "Unique Paths" : [https://leetcode.com/problems/unique-paths/]
• "Unique Paths II" : [https://leetcode.com/problems/unique-paths-ii/]
Day 74 (Thursday):
Topic: DP – Longest Increasing Subsequence
Problems:
• "Longest Increasing Subsequence" : [https://leetcode.com/problems/
longest-increasing-subsequence/]
• "Russian Doll Envelopes" : [https://leetcode.com/problems/russian-doll-
envelopes/]
• "Longest Common Subsequence" : [https://leetcode.com/problems/
longest-common-subsequence/]
Day 75 (Friday):
Topic: DP – Other Classic Problems
Problems:
• "Coin Change" : [https://leetcode.com/problems/coin-change/]
• "Minimum Path Sum" : [https://leetcode.com/problems/minimum-path-
sum/]
• "Edit Distance" : [https://leetcode.com/problems/edit-distance/]
Day 76 (Saturday – Revision):
Revision: Re-solve "House Robber", "Climbing Stairs", and "Longest
Increasing Subsequence". Focus on identifying overlapping subproblems.
Day 77 (Sunday – Rest):
Rest Day
Week 12: Dynamic Programming (Advanced)
(Days 78-84)
Day 78 (Monday):
Topic: Advanced DP – Backtracking Integration
Problems:
• "Word Break" : [https://leetcode.com/problems/word-break/]
• "Word Break II" : [https://leetcode.com/problems/word-break-ii/]
• "Palindrome Partitioning" (revisited) : [https://leetcode.com/problems/
palindrome-partitioning/]
Day 79 (Tuesday):
Topic: DP – Advanced Pathfinding
Problems:
• "Longest Palindromic Subsequence" : [https://leetcode.com/problems/
longest-palindromic-subsequence/]
• "Minimum Falling Path Sum" : [https://leetcode.com/problems/
minimum-falling-path-sum/]
• "Triangle" : [https://leetcode.com/problems/triangle/]
Day 80 (Wednesday):
Topic: DP – Bitmasking & Subset Problems
Problems:
• "Smallest Sufficient Team" : [https://leetcode.com/problems/smallest-
sufficient-team/]
• "Maximum Product Subarray" : [https://leetcode.com/problems/
maximum-product-subarray/]
• "Longest Path in a Grid" (coding exercise – implement with DP and
bitmasking)
Day 81 (Thursday):
Topic: DP – Stock Trading Variations
Problems:
• "Best Time to Buy and Sell Stock" (revisited) : [https://leetcode.com/
problems/best-time-to-buy-and-sell-stock/]
• "Best Time to Buy and Sell Stock II" : [https://leetcode.com/problems/
best-time-to-buy-and-sell-stock-ii/]
• "Best Time to Buy and Sell Stock III" : [https://leetcode.com/problems/
best-time-to-buy-and-sell-stock-iii/]
Day 82 (Friday):
Topic: Mixed Advanced DP
Problems:
• "Longest Palindromic Substring" (revisited) : [https://leetcode.com/
problems/longest-palindromic-substring/]
• "Burst Balloons" : [https://leetcode.com/problems/burst-balloons/]
• "Dungeon Game" : [https://leetcode.com/problems/dungeon-game/]
Day 83 (Saturday – Revision):
Revision: Re-solve "Word Break", "Longest Increasing Subsequence", and
"Longest Palindromic Subsequence". Emphasize memoization techniques.
Day 84 (Sunday – Rest):
Rest Day
Week 13: Miscellaneous Topics (Days 85-91)
Day 85 (Monday):
Topic: Greedy Algorithms – Basics
Problems:
• "Assign Cookies" : [https://leetcode.com/problems/assign-cookies/]
• "Jump Game" : [https://leetcode.com/problems/jump-game/]
• "Gas Station" : [https://leetcode.com/problems/gas-station/]
Day 86 (Tuesday):
Topic: Greedy Algorithms – Advanced
Problems:
• "Jump Game II" : [https://leetcode.com/problems/jump-game-ii/]
• "Non-overlapping Intervals" : [https://leetcode.com/problems/non-
overlapping-intervals/]
• "Meeting Rooms II" : [https://leetcode.com/problems/meeting-rooms-ii/]
Day 87 (Wednesday):
Topic: Bit Manipulation – Basics
Problems:
• "Number of 1 Bits" : [https://leetcode.com/problems/number-of-1-bits/]
• "Counting Bits" : [https://leetcode.com/problems/counting-bits/]
• "Reverse Bits" : [https://leetcode.com/problems/reverse-bits/]
Day 88 (Thursday):
Topic: Bit Manipulation – Advanced
Problems:
• "Single Number" : [https://leetcode.com/problems/single-number/]
• "Single Number II" : [https://leetcode.com/problems/single-number-ii/]
• "Missing Number" : [https://leetcode.com/problems/missing-number/]
Day 89 (Friday):
Topic: Mixed Miscellaneous Problems
Problems:
• "Valid Palindrome" (revisited) : [https://leetcode.com/problems/valid-
palindrome/]
• "Excel Sheet Column Number" : [https://leetcode.com/problems/excel-
sheet-column-number/]
• "Excel Sheet Column Title" : [https://leetcode.com/problems/excel-
sheet-column-title/]
Day 90 (Saturday – Revision):
Revision: Re-solve "Assign Cookies", "Jump Game", and "Counting Bits".
Review best practices.
Day 91 (Sunday – Rest):
Rest Day
Week 14: Advanced Topics & Mixed
Challenges (Days 92-98)
Day 92 (Monday):
Topic: Advanced Graph Problems
Problems:
• "Redundant Connection" (revisited) : [https://leetcode.com/problems/
redundant-connection/]
• "Graph Valid Tree" (revisited) : [https://leetcode.com/problems/graph-
valid-tree/]
• "Critical Connections in a Network" : [https://leetcode.com/problems/
critical-connections-in-a-network/]
Day 93 (Tuesday):
Topic: Advanced Tree Problems
Problems:
• "Serialize and Deserialize Binary Tree" : [https://leetcode.com/
problems/serialize-and-deserialize-binary-tree/]
• "Lowest Common Ancestor of a Binary Tree" : [https://leetcode.com/
problems/lowest-common-ancestor-of-a-binary-tree/]
• "Binary Tree Maximum Path Sum" (revisited) : [https://leetcode.com/
problems/binary-tree-maximum-path-sum/]
Day 94 (Wednesday):
Topic: Advanced Recursion & Backtracking
Problems:
• "Permutations" : [https://leetcode.com/problems/permutations/]
• "Combination Sum" : [https://leetcode.com/problems/combination-sum/]
• "Subsets" : [https://leetcode.com/problems/subsets/]
Day 95 (Thursday):
Topic: Backtracking Continued
Problems:
• "Word Search" (revisited) : [https://leetcode.com/problems/word-
search/]
• "Sudoku Solver" : [https://leetcode.com/problems/sudoku-solver/]
• "N-Queens" : [https://leetcode.com/problems/n-queens/]
Day 96 (Friday):
Topic: Mixed Challenges
Problems:
• "Longest Increasing Path in a Matrix" : [https://leetcode.com/problems/
longest-increasing-path-in-a-matrix/]
• "Maximal Rectangle" : [https://leetcode.com/problems/maximal-
rectangle/]
• "Shortest Path in a Grid with Obstacles Elimination" : [https://
leetcode.com/problems/shortest-path-in-a-grid-with-obstacles-
elimination/]
Day 97 (Saturday – Revision):
Revision: Re-solve "Critical Connections in a Network", "Serialize and
Deserialize Binary Tree", and "N-Queens". Emphasize backtracking
techniques.
Day 98 (Sunday – Rest):
Rest Day
Week 15: Final Preparation & Mixed Practice
(Days 99-105)
Day 99 (Monday):
Topic: Mixed Practice
Problems:
• "Two Sum" (revisited) : [https://leetcode.com/problems/two-sum/]
• "Reverse Linked List" (revisited) : [https://leetcode.com/problems/
reverse-linked-list/]
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
Day 100 (Tuesday):
Topic: Mixed Practice
Problems:
• "Longest Substring Without Repeating Characters" (revisited) : [https://
leetcode.com/problems/longest-substring-without-repeating-
characters/]
• "Valid Parentheses" (revisited) : [https://leetcode.com/problems/valid-
parentheses/]
• "Merge Intervals" (revisited) : [https://leetcode.com/problems/merge-
intervals/]
Day 101 (Wednesday):
Topic: Mixed Practice
Problems:
• "Binary Search" (revisited) : [https://leetcode.com/problems/binary-
search/]
• "Invert Binary Tree" (revisited) : [https://leetcode.com/problems/invert-
binary-tree/]
• "House Robber" (revisited) : [https://leetcode.com/problems/house-
robber/]
Day 102 (Thursday):
Topic: Mixed Practice
Problems:
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
• "Longest Common Subsequence" (revisited) : [https://leetcode.com/
problems/longest-common-subsequence/]
• "Merge k Sorted Lists" (revisited) : [https://leetcode.com/problems/
merge-k-sorted-lists/]
Day 103 (Friday):
Topic: Mixed Practice
Problems:
• "Course Schedule" (revisited) : [https://leetcode.com/problems/course-
schedule/]
• "Longest Increasing Subsequence" (revisited) : [https://leetcode.com/
problems/longest-increasing-subsequence/]
• "Word Break" (revisited) : [https://leetcode.com/problems/word-break/]
Day 104 (Saturday – Revision):
Revision: Re-solve "Two Sum", "Longest Substring Without Repeating
Characters", and "Binary Search". Reflect on performance improvements.
Day 105 (Sunday – Rest):
Rest Day
Week 16: Intensive Interview Simulation
(Days 106-112)
Day 106 (Monday):
Topic: Simulated Interview Session I
Practice: Solve 3 mixed questions under timed conditions
Problems:
• "Find the Duplicate Number" : [https://leetcode.com/problems/find-the-
duplicate-number/]
• "Longest Consecutive Sequence" (revisited) : [https://leetcode.com/
problems/longest-consecutive-sequence/]
• "Word Search" (revisited) : [https://leetcode.com/problems/word-
search/]
Day 107 (Tuesday):
Topic: Simulated Interview Session II
Practice: Timed challenge focusing on speed
Problems:
• "Maximum Subarray" (revisited) : [https://leetcode.com/problems/
maximum-subarray/]
• "Valid Anagram" (revisited) : [https://leetcode.com/problems/valid-
anagram/]
• "Search in Rotated Sorted Array" (revisited) : [https://leetcode.com/
problems/search-in-rotated-sorted-array/]
Day 108 (Wednesday):
Topic: Simulated Interview Session III
Practice: Timed mixed questions
Problems:
• "Kth Largest Element in an Array" (revisited) : [https://leetcode.com/
problems/kth-largest-element-in-an-array/]
• "Merge Intervals" (revisited) : [https://leetcode.com/problems/merge-
intervals/]
• "Reverse Linked List" (revisited) : [https://leetcode.com/problems/
reverse-linked-list/]
Day 109 (Thursday):
Topic: Simulated Interview Session IV
Practice: Timed challenge with one hard twist
Problems:
• "Burst Balloons" (revisited) : [https://leetcode.com/problems/burst-
balloons/]
• "Longest Palindromic Substring" (revisited) : [https://leetcode.com/
problems/longest-palindromic-substring/]
• "N-Queens" (revisited) : [https://leetcode.com/problems/n-queens/]
Day 110 (Friday):
Topic: Simulated Interview Session V
Practice: Mixed problems under time pressure
Problems:
• "Course Schedule II" : [https://leetcode.com/problems/course-schedule-
ii/]
• "Combination Sum" (revisited) : [https://leetcode.com/problems/
combination-sum/]
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
Day 111 (Saturday – Revision):
Revision: Re-solve "Find the Duplicate Number", "Maximum Subarray", and
"Kth Largest Element in an Array". Work on time management.
Day 112 (Sunday – Rest):
Rest Day
Week 17: Final Touches & Weak Areas (Days
113-119)
Day 113 (Monday):
Topic: Focus on Weak Areas I
• Self-assessment: Identify your toughest topics
• Practice: Choose 3 problems from those areas
(Select problems based on your personal performance)
Day 114 (Tuesday):
Topic: Focus on Weak Areas II
• Self-assessment: Continue reviewing weak areas
• Practice: 3 targeted problems
(Select problems based on your needs)
Day 115 (Wednesday):
Topic: Focus on Weak Areas III
• Self-assessment: More targeted practice
• Practice: 3 additional problems
(Choose based on your review)
Day 116 (Thursday):
Topic: Mixed Practice & Timed Challenges
Problems:
• "Longest Substring Without Repeating Characters" (revisited) : [https://
leetcode.com/problems/longest-substring-without-repeating-
characters/]
• "Merge Intervals" (revisited) : [https://leetcode.com/problems/merge-
intervals/]
• "Binary Search" (revisited) : [https://leetcode.com/problems/binary-
search/]
Day 117 (Friday):
Topic: Final Quick Revision
Problems:
• "Reverse Linked List" (revisited) : [https://leetcode.com/problems/
reverse-linked-list/]
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
• "Two Sum" (revisited) : [https://leetcode.com/problems/two-sum/]
Day 118 (Saturday – Revision):
Revision: Re-solve 3 toughest problems from previous weeks. Focus on
speed and accuracy.
Day 119 (Sunday – Rest):
Rest Day
Week 18: Final Interview Bootcamp (Days
120-126)
Day 120 (Monday):
Topic: Intensive Mixed Problem Solving
Problems:
• "Find the Duplicate Number" (revisited) : [https://leetcode.com/
problems/find-the-duplicate-number/]
• "Longest Consecutive Sequence" (revisited) : [https://leetcode.com/
problems/longest-consecutive-sequence/]
• "House Robber" (revisited) : [https://leetcode.com/problems/house-
robber/]
Day 121 (Tuesday):
Topic: Intensive Mixed Problem Solving
Problems:
• "Word Search" (revisited) : [https://leetcode.com/problems/word-
search/]
• "Valid Parentheses" (revisited) : [https://leetcode.com/problems/valid-
parentheses/]
• "Binary Tree Level Order Traversal" (revisited) : [https://leetcode.com/
problems/binary-tree-level-order-traversal/]
Day 122 (Wednesday):
Topic: Intensive Mixed Problem Solving
Problems:
• "Longest Palindromic Substring" (revisited) : [https://leetcode.com/
problems/longest-palindromic-substring/]
• "Merge k Sorted Lists" (revisited) : [https://leetcode.com/problems/
merge-k-sorted-lists/]
• "Course Schedule" (revisited) : [https://leetcode.com/problems/course-
schedule/]
Day 123 (Thursday):
Topic: Intensive Mixed Problem Solving
Problems:
• "Top K Frequent Elements" (revisited) : [https://leetcode.com/problems/
top-k-frequent-elements/]
• "Invert Binary Tree" (revisited) : [https://leetcode.com/problems/invert-
binary-tree/]
• "Sliding Window Maximum" (revisited) : [https://leetcode.com/
problems/sliding-window-maximum/]
Day 124 (Friday):
Topic: Intensive Mixed Problem Solving
Problems:
• "Subarray Sum Equals K" (revisited) : [https://leetcode.com/problems/
subarray-sum-equals-k/]
• "Longest Increasing Subsequence" (revisited) : [https://leetcode.com/
problems/longest-increasing-subsequence/]
• "Group Anagrams" (revisited) : [https://leetcode.com/problems/group-
anagrams/]
Day 125 (Saturday – Revision):
Revision: Re-solve "Word Search", "Longest Palindromic Substring", and
"Top K Frequent Elements". Focus on speed.
Day 126 (Sunday – Rest):
Rest Day
Week 19: Final Countdown & Mock Interviews
(Days 127-133)
Day 127 (Monday):
Topic: Mock Interview Session I
Problems:
• "Two Sum" (revisited) : [https://leetcode.com/problems/two-sum/]
• "Reverse Linked List" (revisited) : [https://leetcode.com/problems/
reverse-linked-list/]
• "Climbing Stairs" (revisited) : [https://leetcode.com/problems/climbing-
stairs/]
Day 128 (Tuesday):
Topic: Mock Interview Session II
Problems:
• "Binary Search" (revisited) : [https://leetcode.com/problems/binary-
search/]
• "Valid Parentheses" (revisited) : [https://leetcode.com/problems/valid-
parentheses/]
• "Merge Intervals" (revisited) : [https://leetcode.com/problems/merge-
intervals/]
Day 129 (Wednesday):
Topic: Mock Interview Session III
Problems:
• "Course Schedule" (revisited) : [https://leetcode.com/problems/course-
schedule/]
• "Longest Substring Without Repeating Characters" (revisited) : [https://
leetcode.com/problems/longest-substring-without-repeating-
characters/]
• "House Robber" (revisited) : [https://leetcode.com/problems/house-
robber/]
Day 130 (Thursday):
Topic: Mock Interview Session IV
Problems:
• "Kth Largest Element in an Array" (revisited) : [https://leetcode.com/
problems/kth-largest-element-in-an-array/]
• "Invert Binary Tree" (revisited) : [https://leetcode.com/problems/invert-
binary-tree/]
• "Jump Game" (revisited) : [https://leetcode.com/problems/jump-game/]
Day 131 (Friday):
Topic: Mock Interview Session V
Problems:
• "Longest Increasing Subsequence" (revisited) : [https://leetcode.com/
problems/longest-increasing-subsequence/]
• "Word Break" (revisited) : [https://leetcode.com/problems/word-break/]
• "Maximum Subarray" (revisited) : [https://leetcode.com/problems/
maximum-subarray/]
Day 132 (Saturday – Revision):
Revision: Re-solve "Two Sum", "Binary Search", and "Merge Intervals".
Final review of weak points.
Day 133 (Sunday – Rest):
Rest Day
Week 20: Bonus & Final Review (Days
134-135)
Day 134 (Monday):
Topic: Bonus Day – Revisit Your Toughest Problems
• Select any 3 problems from previous weeks that challenged you the
most.
• Re-solve and review your approach, optimizing where possible.
Day 135 (Tuesday):
Topic: Final Day – Overall Review & Confidence Boost
• Go over your one-page tracker and notes.
• Revisit key problems and solution strategies.
• Prepare mentally for upcoming interviews.