Pick the timeline
you actually have
Same pattern sequence either way. The difference is pace, depth per pattern, and how hard the job search runs alongside it.
- ·You have a full-time job and cannot study during the day
- ·No deadline yet — you want to be ready when the right role appears
- ·You would rather go deeper on each pattern than rush the sequence
Your week, blocked out
Put these in a real calendar with real alerts. The times are a template — shift them to your chronotype, but keep the shape: hardest work first, review daily, one long intake block, one full day off.
Before work, before Slack. An hour you control beats three hours you keep getting pulled out of.
Short and frequent beats long and rare. Consistency is the whole mechanism.
The one long block of the week: read the pattern, work the visualizers, write the templates cold.
Two problems in 45 minutes under real pressure, or a peer mock. Simulate before you have to perform.
No urgency early. Once the core patterns land, start a low, steady application rate to stay in market.
About 8–10 hrs. If you miss a block, skip it — do not stack two into one day. The schedule works because it repeats, not because any single session is long.
Imports as a repeating series for the whole 24 weeks, each with a 10-minute heads-up. A calendar alert you already trust beats another app asking for your attention.
The 24-week schedule
Dependency-ordered: nothing asks you to know a pattern you have not met yet.
Hash maps, stacks, queues — the structures every other pattern is built on. Plus the Python stdlib moves that make interview code fast to write. — week 1: learn the pattern, work the Easy and early Medium problems.
Hash maps, stacks, queues — the structures every other pattern is built on. Plus the Python stdlib moves that make interview code fast to write. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Your first two real patterns. Both are one-pass linear scans; learn to spot which one a problem is asking for. — week 1: learn the pattern, work the Easy and early Medium problems.
Your first two real patterns. Both are one-pass linear scans; learn to spot which one a problem is asking for. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Prefix sums, Kadane’s and in-place tricks, then string-specific machinery: expand-around-center, frequency keys, and why += in a loop is quadratic. — week 1: learn the pattern, work the Easy and early Medium problems.
Prefix sums, Kadane’s and in-place tricks, then string-specific machinery: expand-around-center, frequency keys, and why += in a loop is quadratic. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Binary search — including binary search on the answer, which most candidates never practise — then the bit tricks that turn a whole Blind-75 category into code you can actually explain. — week 1: learn the pattern, work the Easy and early Medium problems.
Binary search — including binary search on the answer, which most candidates never practise — then the bit tricks that turn a whole Blind-75 category into code you can actually explain. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Pointer surgery. Reversal and dummy heads must be muscle memory; Floyd’s cycle detection is the classic follow-up. — week 1: learn the pattern, work the Easy and early Medium problems.
Pointer surgery. Reversal and dummy heads must be muscle memory; Floyd’s cycle detection is the classic follow-up. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Tree structure and the BST invariant, then depth-first search proper: recursion, explicit stacks, islands, path problems. The highest-leverage block in the plan. — week 1: learn the pattern, work the Easy and early Medium problems.
Tree structure and the BST invariant, then depth-first search proper: recursion, explicit stacks, islands, path problems. The highest-leverage block in the plan. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Breadth-first search for unweighted shortest paths, then weighted graphs: Dijkstra, topological sort, and minimum spanning trees. — week 1: learn the pattern, work the Easy and early Medium problems.
Breadth-first search for unweighted shortest paths, then weighted graphs: Dijkstra, topological sort, and minimum spanning trees. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Heaps that stay size k, and the sort-then-sweep interval pattern. Both are formulaic once seen. — week 1: learn the pattern, work the Easy and early Medium problems.
Heaps that stay size k, and the sort-then-sweep interval pattern. Both are formulaic once seen. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Monotonic stack (next-greater-element family) and greedy — including how to tell greedy is actually safe. — week 1: learn the pattern, work the Easy and early Medium problems.
Monotonic stack (next-greater-element family) and greedy — including how to tell greedy is actually safe. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Choose, explore, unchoose — plus tries. Slow down here; the recursion tree is the whole game. — week 1: learn the pattern, work the Easy and early Medium problems.
Choose, explore, unchoose — plus tries. Slow down here; the recursion tree is the whole game. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Dynamic programming. The heaviest block by design — memoise first, convert to tabulation second, and practise naming the state out loud. — week 1: learn the pattern, work the Easy and early Medium problems.
Dynamic programming. The heaviest block by design — memoise first, convert to tabulation second, and practise naming the state out loud. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Union-find, then no new patterns: recognition drills, timed mocks, and re-solving everything you flagged. — week 1: learn the pattern, work the Easy and early Medium problems.
Union-find, then no new patterns: recognition drills, timed mocks, and re-solving everything you flagged. — week 2: the Hard problems, plus re-solve anything you flagged last week.
Solving it once is not learning it
Retrieval beats re-reading, and spaced retrieval beats massed retrieval. When you solve a problem, it re-enters your queue on this schedule.
If you needed the solution, re-solve it from a blank file before you sleep.
The first interval where forgetting has started but recovery is still fast.
If you get it clean here, the pattern is sticking.
Final check. Clean at 21 days means it is yours.
The 25-minute rule
Read the problem, restate it out loud in your own words, and state the brute force before optimizing.
Before writing code, say which pattern this is and why. Wrong guesses here are cheap; wrong guesses 20 minutes in are not.
Stuck at 25 minutes is not failure, it is the signal to look. Grinding for 90 minutes teaches you almost nothing.
Take the idea, close the page, and write the implementation yourself. Copying code creates the illusion of competence.
Same day, empty file, no reference. This is the rep that counts.
Tick it off, and let the +2 / +7 / +21 day queue bring it back.
You are ready when
Not "when I have done N problems" — problem count is an input, not an outcome. These are the outcomes.