LECTURE 23 OF 25
Backtracking
Backtracking is just depth-first search over a tree of choices you build as you go, undoing each choice once you've explored where it leads.
Builds on
Best read after 5. Recursion, 14. Trees and Binary Search Trees — you can still read ahead, but some of this may lean on ideas covered there.