Что такое рекурсия

Python Middle Без компании
Что такое рекурсия
Ответы
Рекурсия — это процесс, при котором функция вызывает саму себя, прямо или косвенно. Она используется для решения задач, которые можно разбить на более простые подзадачи того же типа. **Пример рекурсивной функции для вычисления факториала:** ``` def factorial(n): if n == 0: # базовый случай return 1 return n * factorial(n - 1) # рекурсивный случай ``` **Ключевые моменты:** - **Базовый случай** — условие выхода из рекурсии (без него будет бесконечная рекурсия и переполнение стека). - **Рекурсивный случай** — вызов функции с изменёнными аргументами, приближающими к базовому случаю. **Осторожно:** Рекурсия может быть менее эффективной по памяти, чем итеративные решения, из-за накопления вызовов в стеке. В Python глубина рекурсии ограничена (обычно ~1000). Для глубокой рекурсии лучше использовать итерации или хвостовую рекурсию (которую Python не оптимизирует).