Backtracking is used to systematically search for solutions to problems by trying possibilities and abandoning ("backtracking") partial candidate solutions that fail to satisfy constraints. Examples discussed include the rat in a maze problem, the traveling salesperson problem, container loading, finding the maximum clique in a graph, and board permutation problems. Backtracking algorithms traverse the search space depth-first and use pruning techniques like discarding partial solutions that cannot lead to better complete solutions than those already found.