Backtracking

Try a choice, keep going, and undo it if it fails, used to generate permutations, combinations, and valid layouts.