Goal
Work through the NeetCode 150 as a structured track rather than a grab bag: build the underlying structures first, then clear the pattern families in a deliberate order, with spaced re-solves so fluency survives past the week you practiced it. The skill proved is the one interviews actually grade — recognizing which of ~20 patterns a problem is wearing, and reasoning aloud to a working solution.
Subject: full brief & instructions
Practices
- Algorithms & data structures — the entire concept: structures, algorithm families, the pattern catalog, and the deliberate-practice protocol this track operationalizes.
- Performance engineering — big-O instincts against real constant factors, when you benchmark your own structures.
Milestones
Protocol for every milestone: attempt each problem hard for 20–30 minutes before reading
any solution; log the ones that beat you and re-solve them from scratch 3+ days later;
talk aloud while solving. Track attempts in todos/ or journal/, not here.
- Structures from scratch. Implement dynamic array, hash map (with collision handling), min-heap, trie, and union-find, each with tests and a written note on its complexity and failure modes. The rest of the track uses your mental model of these.
- Arrays & hashing → two pointers → sliding window. The bread-and-butter patterns; finish able to state why the window/pointer move preserves correctness.
- Stack, binary search, linked list. Monotonic stack, "binary search the answer", fast & slow pointers.
- Trees, tries, heaps. Traversals recursive and iterative, BST invariants, top-K with a heap.
- Graphs, intervals, greedy. BFS/DFS, topological sort, Dijkstra; interval merge/overlap; greedy — with a one-line argument for why greedy is safe each time.
- Dynamic programming & backtracking. 1-D then 2-D DP (state the subproblem in one sentence before coding), permutations/subsets/pruning.
Stretch goals
- Timed mock interviews (45 min, talking aloud, no editor autocomplete), recorded and reviewed.
- The hard tier of each pattern on NeetCode, or contest problems (Advent of Code, Project Euler) as cross-training.
- Re-implement milestone 1 in Go and Rust — see Deep dive Go and Deep dive Rust — as language practice.
Related
- Algorithms & data structures — the
concept note whose
# Practicecites this track. - Interview-prep track — subject — the track as a runnable protocol with acceptance checks.
- System design fundamentals — the other half of the interview loop.