Описание тега recursive-backtracking

Recursive backtracking is a general algorithm for finding solutions to a computational problem which incrementally builds candidates to the solutions and drops partial solutions which can not lead to the correct answer.

Рекурсивный поиск с возвратом — это общий алгоритм поиска решений вычислительных задач, который постепенно создает частичные решения и отбрасывает как можно раньше те частичные решения, которые определены как бесполезные, т. е. такие, которые не могут привести к правильному решению.

По сути, это включает в себя создание вложенных циклов посредством рекурсии. Каждая петля воплощает серию выборов. Каждый внутренний цикл может принять частичное решение на данный момент и попробовать свои собственные варианты в цикле или отклонить частичное решение, которое ему представлено, посредством раннего выхода или эквивалента continueили breakзаявление.

Управление инвертировано в том, что полное решение достигается в самом внутреннем цикле, который может воздействовать на него определенным образом, например, печатать его в выходной/внешний файл или вызывать обратный вызов с решением в качестве аргумента.

Вычислительная структура возврата реализована в состояниях вложенных циклов, в каждой из переменных цикла вложенных циклов.