11.5. Заключение
Рекурсия
– это прием, который часто позволяет
заменить итерацию простым и элегантным
способом. Рекурсивные решения подходят
для тех ситуаций, когда задача может
быть сведена к решению ее более простой
версии.
Процедуры
CF Pascal могут
вызывать себя, рекурсивные процедуры
являются механизмом для реализации
решения задач с помощью рекурсии. Важным
аспектом рекурсии в программировании
является то, что каждый новый вызов
создает экземпляры локальных переменных.
Эта особенность является существенной
для решения многих задач.
Сортировка
и реверсирования с помощью рекурсии
являются хорошими примерами использования
этого приема. Задача Ханойские башни
имеет особенно элегантное рекурсивное
решение.
Математическая
индукция может быть полезна при
доказательстве свойств рекурсивных
задач.
Правило
верификации простых рекурсивных процедур
очень похоже на правило верификации
оператора WHILE, которое мы
рассмотрели в главе 8.