Algorithms from zero
Toolbox: free-recall review
Pattern recognition sticks only when you can produce the decision tree from memory under pressure. For each prompt, say or write the full reasoning — from the clue in the problem to the technique and its cost — before you reveal the model answer.
Reconstruct the track’s selection logic without looking back: how to read constraints into a complexity budget, which problem verbs map to which technique family, and why the tempting alternative is the trap.
- 01How do you turn the input-size constraint into a complexity budget before choosing a technique?
- 02Map each problem verb to its technique family: 'does X exist / count distinct', 'k-th smallest / next by priority', 'count ways or optimise over overlapping subproblems', 'best local pick you can justify'.
- 03When sorted input appears, which two techniques does it unlock, and how do you pick between them?
- 04Distinguish when a graph problem needs BFS, Dijkstra, topological sort, or Union-Find.
- 05Why is recognising overlapping subproblems the pivotal moment in problem solving, and what are your three responses to it?
- 06Give the full top-of-tree decision flow you run on a brand-new problem.
If you could reconstruct each answer cold, you hold the track’s spine: constraints become a complexity budget, the problem’s verb names the technique family, sorted input unlocks binary search or two pointers, the graph variant picks BFS / Dijkstra / toposort / Union-Find, and spotting overlapping subproblems is the pivot from exponential to polynomial. The toolbox is one decision flow run fast — budget, verb, structure, subproblem check, data structure, sanity check — not a pile of memorised algorithms.