El backtracking es una técnica usada en computación que en pocas palabras va explorando un problema por todo un árbol de combinaciones en donde forzosamente alguna de las posibles combinaciones es solución del problema. Es casi la técnica humana cuando se quiere resolver un problema nuevo y no tan obvio, en donde sólo se conocen las reglas del problema y se tiene que ir probando por caminos diferentes para encontrar la solución.