Practice target: Around 75 to 120 minutes daily, with extra time for Hard questions
Pattern clue: Repeated range totals, left/right sums, or counts of subarrays with a target sum.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 1 | Running totals | 1480. Running Sum of 1d Array + 1732. Find the Highest Altitude · Beginner guide to prefix sums |
| 2 | Query many ranges | 303. Range Sum Query - Immutable + 2574. Left and Right Sum Differences |
| 3 | Prefix vs suffix | 724. Find Pivot Index + 1991. Find the Middle Index in Array |
| 4 | Prefix + frequency map | 560. Subarray Sum Equals K + 930. Binary Subarrays With Sum |
| 5 | 2D prefix sums | 304. Range Sum Query 2D - Immutable + 1314. Matrix Block Sum · 2D prefix-sum visual explanation |
| 6 | Harder subarray sums | 974. Subarray Sums Divisible by K + 523. Continuous Subarray Sum |
| 7 | Review without hints | 303. Range Sum Query - Immutable + 560. Subarray Sum Equals K · Visual algorithm reference |
Pattern clue: Fast membership lookup, repeated values, or counts of characters and numbers.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 8 | Complements | 1. Two Sum + 217. Contains Duplicate · Hash table explanation |
| 9 | Seen before | 2351. First Letter to Appear Twice + 219. Contains Duplicate II |
| 10 | Character frequencies | 242. Valid Anagram + 383. Ransom Note |
| 11 | Position and count | 387. First Unique Character in a String + 205. Isomorphic Strings |
| 12 | Group by key | 49. Group Anagrams + 451. Sort Characters By Frequency |
| 13 | Set-based scanning | 128. Longest Consecutive Sequence + 347. Top K Frequent Elements |
| 14 | Review without hints | 1. Two Sum + 49. Group Anagrams · Pattern-based question tracker |
Pattern clue: Sorted arrays, symmetric checks, or an in-place scan with two positions.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 15 | Converging pointers | 125. Valid Palindrome + 344. Reverse String · Algorithm examples with explanations |
| 16 | Sorted pair search | 167. Two Sum II - Input Array Is Sorted + 977. Squares of a Sorted Array |
| 17 | Read/write pointers | 283. Move Zeroes + 26. Remove Duplicates from Sorted Array |
| 18 | Greedy pointer movement | 11. Container With Most Water + 680. Valid Palindrome II |
| 19 | Sort and scan | 15. 3Sum + 75. Sort Colors |
| 20 | Advanced pointer reasoning | 42. Trapping Rain Water + 88. Merge Sorted Array |
| 21 | Timed review | 167. Two Sum II + 11. Container With Most Water + 15. 3Sum |
Pattern clue: A contiguous substring or subarray, often longest, shortest, or fixed-size.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 22 | Fixed-size window | 643. Maximum Average Subarray I + 1343. Number of Sub-arrays of Size K and Average Greater than or Equal to Threshold · Sliding window tutorial |
| 23 | Unique-character window | 3. Longest Substring Without Repeating Characters + 904. Fruit Into Baskets |
| 24 | Find minimum length | 209. Minimum Size Subarray Sum + 1493. Longest Subarray of 1's After Deleting One Element |
| 25 | Fixed-length frequency window | 567. Permutation in String + 438. Find All Anagrams in a String |
| 26 | Window with allowed changes | 424. Longest Repeating Character Replacement + 1004. Max Consecutive Ones III |
| 27 | Stretch problems | 76. Minimum Window Substring + 2461. Maximum Sum of Distinct Subarrays With Length K |
| 28 | Timed review | 3. Longest Substring Without Repeating Characters + 209. Minimum Size Subarray Sum + 424. Longest Repeating Character Replacement · Multi-language worked solutions |
Pattern clue: Sorted input, first/last valid boundary, or a monotonic answer condition.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 29 | Basic search | 704. Binary Search + 35. Search Insert Position · Visual binary search guide |
| 30 | First true boundary | 278. First Bad Version + 374. Guess Number Higher or Lower |
| 31 | Range boundaries | 34. Find First and Last Position of Element in Sorted Array + 74. Search a 2D Matrix |
| 32 | Rotated arrays | 33. Search in Rotated Sorted Array + 153. Find Minimum in Rotated Sorted Array |
| 33 | Search on answer | 162. Find Peak Element + 875. Koko Eating Bananas |
| 34 | More search on answer | 1011. Capacity To Ship Packages Within D Days + 981. Time Based Key-Value Store |
| 35 | Timed review | 34. First and Last Position + 33. Search in Rotated Sorted Array + 875. Koko Eating Bananas · Java DSA bootcamp notes |
Pattern clue: Next greater/smaller element, nearest boundary, or spans across previous values.
| Day | Topic | Exact questions and learning resource |
|---|---|---|
| 36 | Next greater | 496. Next Greater Element I + 1475. Final Prices With a Special Discount in a Shop · Reference solutions and explanations |
| 37 | Resolve waiting indices | 739. Daily Temperatures + 503. Next Greater Element II |
| 38 | Streaming spans | 901. Online Stock Span + 402. Remove K Digits |
| 39 | Histogram boundaries | 84. Largest Rectangle in Histogram + 85. Maximal Rectangle |
| 40 | Contribution counting | 907. Sum of Subarray Minimums + 735. Asteroid Collision |
| 41 | Alternate stack approaches | 42. Trapping Rain Water + 84. Largest Rectangle in Histogram |
| 42 | Timed review | 496. Next Greater Element I + 739. Daily Temperatures + 901. Online Stock Span |