Шаг 169.
Рекурсия на Python.
Вложенная рекурсия и снова хвостовая (общие сведения)

    На этом шаге мы определимся с дальнейшим изложением материала.

    Особенность хвостовой рекурсии - её тесная связь с итерацией. Прежде всего её довольно просто преобразовать в аналогичные итерационные версии - более эффективные и не подверженные ошибкам переполнения стека. По этой причине некоторые программисты склонны считать хвостовую рекурсию порочной практикой. Более того, нередко встречаются хвостовые рекурсивные алгоритмы, разработанные с использованием императивного подхода, который ближе к итерации, чем к рекурсии с её декомпозицией и индукцией. В этих случаях итерационные версии явно превосходят рекурсивные. Начиная с этого шага, мы исследуем взаимосвязь между хвостовой рекурсией и итерацией. Кроме того, здесь мы коротко понакомимся со вложенной рекурсией и стратегией разработки простых хвостовых рекурсивных алгоритмов, зачастую подобных итерационным, но с использованием декларативного подхода.

    На следующем шаге мы рассмотрим хвостовую рекурсию и итерацию.




Предыдущий шаг Содержание Следующий шаг