Backtracking é um tipo de
algoritmo que representa um refinamento da busca por
força bruta, em que múltiplas soluções podem ser eliminadas sem serem explicitamente examinadas. O termo foi cunhado pelo matemático estado-unidense D. H. Lehmer na
década de 1950.