Встречается на собеседованиях • сегодня

Зачем нужна рекурсия

Рекурсия — это когда функция вызывает саму себя. Она полезна для задач, которые можно разбить на более мелкие подзадачи того же типа.

Преимущества:

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

Недостатки:

  • Может привести к переполнению стека при глубокой рекурсии.
  • Обычно менее эффективна по памяти и скорости, чем итерация.

Пример (факториал):

python
def factorial(n):
    if n == 1:
        return 1
    return n * factorial(n - 1)

Когда использовать:

  • Когда задача естественно рекурсивна (деревья, комбинаторика).
  • Если читаемость важнее производительности.

Альтернатива: итерация с циклами (for, while).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы