Skip to content

Training roadmap

This is the intended order for the track.

It borrows the pattern progression from the NeetCode roadmap and combines it with a CTCI-style solving loop on every problem.

  1. Clarify the problem. Restate it and ask what inputs, outputs, and edge cases matter.
  2. Make an example. Small concrete examples expose structure fast.
  3. State the brute force first. Even if it is too slow, it gives you a baseline.
  4. Optimize deliberately. Ask what repeated work or missing data structure is causing the slowdown.
  5. Code cleanly. Prefer clear names and one coherent idea over clever mess.
  6. Test with edge cases. Empty input, one element, duplicates, negatives, sorted input, and extreme sizes.

That loop matters as much as any single pattern. It is how you avoid freezing when a problem is unfamiliar.

Start with 3 problems per week.

A good weekly shape:

  • 2 new problems from the current lesson theme
  • 1 review problem from a previous theme
  • optional: rewrite one solution from scratch a day later without looking

Do not increase volume until the current pace feels easy.

Topics:

  • problem-solving basics
  • time and space complexity refresh
  • arrays and hashing
  • two pointers

Target:

  • regain fluency with easy problems
  • get comfortable saying why a set or map helps
  • stop panicking at blank screens

Topics:

  • stack
  • binary search
  • sliding window
  • linked list
  • intervals

Target:

  • solve common easy and medium questions with recognizable pattern choices
  • stop treating each problem as completely new

Topics:

  • trees
  • tries
  • heaps and priority queues

Target:

  • write recursive traversals comfortably
  • know when top-k or frontier ordering suggests a heap

Topics:

  • backtracking
  • graphs
  • union-find
  • advanced BFS and DFS patterns

Target:

  • represent state clearly
  • recognize search spaces, components, shortest path layers, and visitation rules

Topics:

  • 1-D dynamic programming
  • 2-D dynamic programming
  • greedy

Target:

  • move from pattern recognition into state-design thinking
  • handle medium problems consistently before pushing hard more often

Topics:

  • advanced graphs
  • harder DP
  • mixed-pattern problems
  • timed interview reps

Target:

  • solve some hard questions by composition instead of magic insight
  • explain tradeoffs clearly under time pressure

Move on when you can do most of the following for a theme:

  • identify the likely pattern quickly
  • write the clean standard solution without peeking
  • explain runtime and space clearly
  • recover from small mistakes without collapsing

If not, stay longer. That is not failure, that is training.