AlgoMaster Logo

Chapter 15: How to Build a Study Plan

7 min readUpdated March 30, 2026
Listen to this chapter
Unlock Audio

Chapter 15: How to Build a Study Plan

You know the patterns. You understand complexity analysis. You can discuss trade-offs. But none of that matters if your preparation is scattered, if you spend three weeks on trees and zero on graphs, if you never do a mock interview, or if you burn out two weeks before the actual date.

A study plan is not optional. It is the difference between "I studied for three months" and "I prepared effectively for three months." This chapter gives you concrete, week-by-week schedules for 1-month, 2-month, and 3-month timelines. Not vague advice like "practice LeetCode." Specific numbers, specific topics, specific daily routines.

Pick the timeline that matches your schedule, and follow it.

Before You Choose a Timeline

Three factors determine which plan is right for you:

  1. Your starting point. Can you implement a BFS from scratch right now? Do you know what a monotonic stack is? If basic data structures feel rusty, you need more time.
  2. Hours per day. A 1-month plan requires 3-4 focused hours daily. A 3-month plan works with 1.5-2 hours. Be honest about what you can sustain.
  3. Your target companies. FAANG and top-tier startups emphasize hard mediums and hards. Smaller companies often stick to easy-medium range. This affects which problems to prioritize.
TimelineDaily HoursBest For
1 month3-4 hoursExperienced developers, refreshing known material
2 months2-3 hoursDevelopers with some DSA background, moderate practice needed
3 months1.5-2 hoursCareer changers, people learning patterns for the first time

Topic Priority by Interview Frequency

Not all topics appear equally often. Spend more time on high-frequency topics and less on rare ones. This ranking is based on patterns from thousands of interview questions across FAANG and top companies.

PriorityTopicFrequencyTypical Problems
Tier 1 (Must master)Arrays & HashingVery HighTwo Sum, Group Anagrams, Top K Frequent
Tier 1Two PointersVery High3Sum, Container With Most Water
Tier 1Sliding WindowVery HighLongest Substring, Minimum Window
Tier 1Binary SearchVery HighSearch Rotated Array, Koko Eating Bananas
Tier 1Trees (BFS/DFS)Very HighValidate BST, Level Order, Lowest Common Ancestor
Tier 1Graphs (BFS/DFS)HighNumber of Islands, Course Schedule
Tier 2 (Know well)Linked ListsHighReverse, Merge, Detect Cycle
Tier 2Stack / QueueHighValid Parentheses, Daily Temperatures
Tier 2Heap / Priority QueueHighMerge K Sorted Lists, Kth Largest
Tier 2Dynamic Programming (1D)HighClimbing Stairs, House Robber, Coin Change
Tier 2BacktrackingMedium-HighSubsets, Permutations, N-Queens
Tier 3 (Know basics)Dynamic Programming (2D)MediumLongest Common Subsequence, Edit Distance
Tier 3TriesMediumWord Search II, Implement Trie
Tier 3Union FindMediumNumber of Connected Components
Tier 3IntervalsMediumMerge Intervals, Meeting Rooms
Tier 4 (If time allows)Bit ManipulationLowSingle Number, Counting Bits
Tier 4Math / GeometryLowPow(x,n), Rotate Image
Tier 4Advanced Graph (Dijkstra, Topo Sort)Low-MediumNetwork Delay Time, Alien Dictionary

Tier 1 and Tier 2 cover roughly 80% of interview questions. If time is limited, do not touch Tier 4 until Tier 1 and 2 are solid.

The 1-Month Plan (Intensive)

This plan is for developers who already know data structures and have some problem-solving experience. You are refreshing and sharpening, not learning from scratch.

Daily structure: 3-4 hours

Week 1: Core Patterns (Tier 1)

DayTopicProblemsFocus
1Arrays & Hashing4-5Two Sum, Group Anagrams, Valid Anagram, Top K Frequent
2Two Pointers4-5Valid Palindrome, 3Sum, Container With Most Water
3Sliding Window3-4Best Time to Buy Stock, Longest Substring Without Repeating, Minimum Window Substring
4Binary Search3-4Search Rotated Array, Find Minimum in Rotated, Koko Eating Bananas
5Stacks3-4Valid Parentheses, Min Stack, Daily Temperatures
6Linked Lists3-4Reverse Linked List, Merge Two Sorted, Linked List Cycle
7Review + weak spots2-3Redo any problem you struggled with

Problems per day: 3-5 Total for week: ~25-30

Week 2: Intermediate Patterns (Tier 1-2)

DayTopicProblemsFocus
1Trees (DFS)4-5Max Depth, Same Tree, Invert Binary Tree, Validate BST
2Trees (BFS + BST)3-4Level Order Traversal, Lowest Common Ancestor, Kth Smallest
3Graphs (BFS/DFS)3-4Number of Islands, Clone Graph, Course Schedule
4Heaps3-4Kth Largest in Stream, Merge K Sorted Lists, Find Median
51D DP3-4Climbing Stairs, House Robber, Coin Change, Longest Increasing Subsequence
6Backtracking3-4Subsets, Combination Sum, Permutations, Word Search
7Review + weak spots2-3Focus on patterns you found hardest

Problems per day: 3-5 Total for week: ~25-30

Week 3: Advanced + Weak Areas (Tier 2-3)

DayTopicProblemsFocus
12D DP3Unique Paths, Longest Common Subsequence, Edit Distance
2Intervals + Greedy3-4Merge Intervals, Non-Overlapping Intervals, Jump Game
3Tries + Union Find3Implement Trie, Word Search II, Number of Connected Components
4Weak area 13-4Whatever pattern gave you the most trouble
5Weak area 23-4Second weakest pattern
6Mixed practice4-5Random problems from all topics, timed
7Mock interview 1245 minutes, explain aloud, time yourself

Week 4: Mocks and Polish

DayTopicFocus
1Mock interview 2Full simulation with a friend or platform
2Review mock feedbackRedo problems you failed or were slow on
3Mock interview 3Different topic mix
4Company-tagged problemsSolve 4-5 problems tagged for your target company
5Company-tagged + patternsContinue company-specific prep
6Light reviewRevisit your notes, review key patterns
7RestLight reading only, no heavy problem-solving

Total problems over 4 weeks: ~100-120

The 2-Month Plan (Balanced)

More breathing room. You can learn patterns properly, practice each one with enough problems to build intuition, and still have time for mocks.

Daily structure: 2-3 hours

Weeks 1-2: Foundations

WeekTopicsProblems/DayWeekly Total
1Arrays, Hashing, Two Pointers, String basics3~20
2Sliding Window, Binary Search, Sorting patterns3~20

Spend extra time understanding each pattern before solving. Read the pattern explanation, study 1-2 solved examples, then solve on your own.

Weeks 3-4: Core Data Structures

WeekTopicsProblems/DayWeekly Total
3Linked Lists, Stacks, Queues, Trees (DFS)3~20
4Trees (BFS, BST), Heaps, Graphs (BFS/DFS)3~20

Weeks 5-6: Advanced Patterns

WeekTopicsProblems/DayWeekly Total
51D DP, Backtracking, Greedy2-3~18
62D DP, Intervals, Tries, Union Find2-3~18

These topics are harder. Reduce problem count and increase study time per problem. For DP especially, spend 10-15 minutes understanding the recurrence before coding.

Weeks 7-8: Mocks and Company Prep

WeekFocusActivity
7Mock interviews (2-3), mixed practice, weak area reviewSimulate real conditions: 45 min, whiteboard or shared doc
8Company-tagged problems, final mocks (2), light reviewFocus on your target company's most-asked patterns

Total problems over 8 weeks: ~140-160

The 3-Month Plan (Comprehensive)

This is the plan for people who are learning many patterns for the first time or have been away from DSA for years. The pace is sustainable, and there is time to truly internalize each pattern.

Daily structure: 1.5-2 hours

Month 1: Learn Patterns (Weeks 1-4)

WeekTopicsProblems/DayApproach
1Arrays, Hashing2Study pattern first, then solve. Read solutions if stuck after 20 min.
2Two Pointers, Sliding Window2Practice explaining your approach aloud.
3Binary Search, Stacks2Focus on identifying WHEN to use each pattern.
4Linked Lists, Sorting patterns2Implement from scratch, do not just read code.

Weekly total: ~14 problems Month total: ~55 problems

Month 2: Practice and Deepen (Weeks 5-8)

WeekTopicsProblems/DayApproach
5Trees (DFS, BFS, BST)2-3Draw the tree. Trace the recursion by hand.
6Graphs (BFS, DFS, Topological Sort)2-3Always build the adjacency list yourself.
71D DP, Memoization2Write recurrence first, then code.
8Backtracking, Greedy, Heaps2-3Focus on decision trees for backtracking.

Weekly total: ~15 problems Month total: ~60 problems

Month 3: Mock Interviews and Polish (Weeks 9-12)

WeekFocusActivity
92D DP, Intervals, Tries, Union Find2 new problems/day from Tier 3 topics
10Mixed practice (all patterns)Random problems, timed (25-35 min each)
11Mock interviews (3-4) + company-tagged problemsFull simulations, review after each
12Final mocks (2), review notes, rest before interviewsLight practice, focus on confidence

Monthly total: ~50 problems Grand total over 3 months: ~165 problems

The Daily Routine

Whatever timeline you choose, your daily session should follow this structure:

PhaseTimeActivity
Warm-up5 minReview yesterday's problems. Can you recall the approach without looking?
Study10-15 minRead the pattern or technique for today's topic (if learning new material)
Solve25-35 min per problemAttempt the problem. If stuck after 15-20 min, look at a hint (not the full solution).
Review10 min per problemAfter solving (or reading solution), understand every line. Write a 1-2 sentence summary of the key insight.
Reflect5 minAdd the problem to your tracking sheet. Note what pattern it used and what tripped you up.

The review phase is where learning actually happens. Solving a problem teaches you one thing. Understanding why the solution works teaches you the pattern you can apply to fifty other problems.

When You Get Stuck: The 20-Minute Rule

If you have been staring at a problem for 20 minutes with no progress, stop trying and look at a hint or the approach description. Here is why:

  • Struggling for 20 minutes builds problem-solving muscle.
  • Struggling for 60 minutes builds frustration and teaches nothing extra.
  • The goal is not to solve every problem independently. The goal is to learn patterns quickly enough to recognize them in interviews.

After reading the hint or approach, close it and implement the solution yourself. That is the critical step. Reading a solution is passive. Implementing it is active learning.

When to Move On from a Topic

A topic is "done" when you can:

  1. Explain the pattern in one sentence. ("Sliding window maintains a valid window by expanding right and shrinking left.")
  2. Identify when to use it from a problem description, without being told.
  3. Solve a medium problem using the pattern in under 30 minutes.
  4. Handle variations. Fixed-size window vs variable-size, finding min vs max.

If you cannot do all four, you need more practice on that topic. If you can, move on even if you have not solved every problem on the list. Breadth of patterns matters more than depth on a single pattern.

When to Start Mock Interviews

Start mocks when you have covered at least Tier 1 and Tier 2 topics. For the 1-month plan, that means week 3. For the 2-month plan, week 6. For the 3-month plan, week 9.

Do not wait until you feel "ready." You will never feel ready. Mocks expose gaps that solo practice cannot:

  • Can you explain your thinking while coding?
  • Do you ask clarifying questions before diving in?
  • Can you handle an unexpected follow-up question?
  • Do you manage your time across a 45-minute session?

Aim for at least 4-6 mock interviews before your real ones. Use a friend, a study partner, or platforms like Pramp or interviewing.io.

Progress Tracking

Keep a simple spreadsheet or document with these columns:

DateProblemTopic/PatternDifficultySolved?TimeKey InsightRedo?
3/15Two SumHash MapEasyYes8 minStore complement in mapNo
3/153SumTwo PointersMediumHint35 minSort first, skip duplicatesYes
3/16Min Window SubstringSliding WindowHardNo40 minTrack char frequencies, shrink leftYes

The "Redo?" column is the most important one. Every Sunday, revisit problems marked "Yes." If you can solve them cleanly now, remove the mark. If not, they stay on the redo list. This spaced repetition is how patterns move from short-term to long-term memory.

Balancing New Patterns vs Practice

A common mistake is spending all your time learning new patterns without practicing old ones. Another common mistake is grinding problems without learning the underlying pattern first. The right balance:

  • 70% of your time: Solving problems on your current topic.
  • 20% of your time: Reviewing and redoing problems from previous topics.
  • 10% of your time: Studying the next pattern before you start it.

This means if you have a 2-hour session, spend roughly 80 minutes on today's problems, 25 minutes reviewing past problems, and 15 minutes reading about tomorrow's topic.

Common Mistakes in Study Planning

MistakeWhy It HurtsFix
Solving only easy problemsBuilds false confidence. Interviews are mediums and hards.After 2-3 easys per topic, switch to mediums.
Spending too long on one topicOpportunity cost. Knowing 10 patterns okay beats knowing 3 perfectly.Use the "move on" criteria above.
Skipping mocksSolo practice cannot simulate interview pressure.Schedule mocks like appointments.
Not tracking progressYou cannot fix what you do not measure.Use the tracking sheet. Five minutes per day.
Studying without breaksDiminishing returns after 2-3 hours. Burnout kills consistency.Take a day off per week. Shorter focused sessions beat long unfocused ones.
Only solving, never reviewingYou forget 80% of what you solved within a week.Redo problems. The review phase is non-negotiable.
Starting with DP and graphsThese are hard. Starting with them kills motivation.Follow the topic priority order. Build confidence with Tier 1 first.

The Week Before Your Interview

The final 7 days are not for learning new material. They are for consolidation and confidence.

DayActivity
7 days outFinal mock interview. Identify last weak spots.
6 days outSolve 3-4 problems from your weak areas.
5 days outReview your tracking sheet. Redo 3-4 "Redo" problems.
4 days outSolve 2-3 company-tagged problems.
3 days outReview your pattern cheat sheet (one sentence per pattern).
2 days outLight practice: 1-2 easy problems to stay sharp.
1 day outNo coding. Rest. Review your notes if you want, but do not stress-solve.

Interview Questions

Q1: You have exactly 6 weeks to prepare and can dedicate 2 hours per day. How would you allocate your time across topics?

Weeks 1-2 on Tier 1 topics (arrays, hashing, two pointers, sliding window, binary search) with 3 problems per day. Weeks 3-4 on Tier 2 topics (trees, graphs, heaps, stacks, 1D DP) with 2-3 problems per day. Week 5 on Tier 3 topics (2D DP, backtracking, tries) and mixed practice. Week 6 on mock interviews and company-tagged problems. This gives roughly 120 problems with emphasis on the highest-frequency patterns.

Q2: How do you decide whether to keep practicing a topic or move on?

Move on when you can: explain the pattern in one sentence, identify it from a problem description, solve a medium in under 30 minutes, and handle variations. If you fail any of those criteria, do 2-3 more problems on that topic. Do not aim for perfection. Covering more patterns has higher return than mastering one.

Q3: What is more valuable, solving 300 easy problems or 100 problems across all difficulties?

100 problems across all difficulties. Easy problems rarely appear in interviews, and they do not build the reasoning skills needed for mediums and hards. Use easys (2-3 per topic) to understand the basic pattern, then move to mediums. Hards are important for top-tier companies but should make up only 10-15% of your practice.

Summary

  • Choose your timeline based on starting point and available hours: 1 month (3-4 hrs/day), 2 months (2-3 hrs/day), or 3 months (1.5-2 hrs/day).
  • Prioritize by interview frequency. Tier 1 and Tier 2 topics cover 80% of interview questions. Do not touch Tier 4 until Tiers 1-2 are solid.
  • Follow the daily routine: warm-up, study, solve (with the 20-minute rule), review, reflect. The review phase is where patterns stick.
  • Use the "move on" criteria: explain, identify, solve a medium in 30 minutes, handle variations. Do not over-invest in any single topic.
  • Start mock interviews after covering Tier 1 and Tier 2. Schedule at least 4-6 mocks before real interviews.
  • Track every problem you solve. The "Redo" column and weekly review sessions are what make the difference between studying and actually improving.
  • The week before the interview: consolidate, do not cram. Rest the day before.

This plan is a starting point. Adjust it as you discover your specific weaknesses. The goal is not to follow a rigid schedule. The goal is to make consistent, measurable progress every week until interview day.