Рекурсивные алгоритмы обработки данных работают путём разделения большой задачи на более мелкие. 1 Выполняя один шаг, уменьшают основную проблему и после этого повторяют аналогичное действие. 1
В конечном итоге проблема уменьшается настолько, что остаётся выполнить одно простое действие, которое принято называть базовым случаем. 1 Таким образом простейшее решение базового случая в совокупности со всеми действиями, которые были осуществлены перед этим, представляет собой решение основной проблемы. 1
Основной принцип рекурсии заключается в том, что функция или процедура вызывает сама себя в своём теле. 2 При каждом вызове результат работы функции удерживается до тех пор, пока не будет достигнут базовый (крайний) случай, при котором рекурсия завершается и возвращается к предыдущему вызову. 2