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

Умеешь ли работать с рекурсией в Python

Да, умею работать с рекурсией. Рекурсия — это когда функция вызывает саму себя. В Python она полезна для задач, которые можно разбить на подзадачи того же типа (например, обход деревьев, факториалы, числа Фибоначчи).

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

python
def factorial(n):
    if n == 0 or n == 1:  # базовый случай
        return 1
    else:
        return n * factorial(n - 1)  # рекурсивный вызов

Важно:

  • Базовый случай обязателен, иначе рекурсия уйдёт в бесконечность.
  • В Python есть ограничение на глубину рекурсии (sys.getrecursionlimit()), поэтому для больших задач лучше использовать итерации.
  • Хвостовая рекурсия не оптимизируется в Python (в отличие от некоторых других языков).

Для сложных структур (например, деревьев) рекурсия часто читается проще, чем итеративный вариант.

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

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

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

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