Duck Icon

Lander's blog

Backtracking is an algorithmic paradigm that incrementally builds solutions while discarding invalid states

Previous: An algorithm is a finite set of rules that gives a sequence of operations for solving a specific type of problem

Backtracking is an algorithmic paradigm that incrementally builds solutions while discarding invalid states.

  1. Base case
  2. Choices
  3. Constraints
  4. Backtrack
def backtrack(params):
    if base_case_condition:
        save_result
        return

    for choice in choices:
        if violates_constraints:
            continue

        make_choice
        backtrack(updated_params)
        undo_choice  # Backtracking Step