Python-курс
🌀 Рекурсия

Рекурсия на практике

Фибоначчи, переворот строки и обход вложенных списков.

~30 минСредний 2 урока

Числа Фибоначчи

Последовательность Фибоначчи начинается с 0 и 1, а каждое следующее число — сумма двух предыдущих: 0, 1, 1, 2, 3, 5, 8, 13... Её определение само по себе рекурсивно: F(n) = F(n−1) + F(n−2), с двумя базовыми случаями F(0) = 0 и F(1) = 1.

fib.py
⚠️Осторожно

Эта красивая запись Фибоначчи очень медленная: fib(n) пересчитывает одни и те же значения многократно. Уже fib(35) заметно тормозит. Позже вы узнаете, как ускорить такие функцииИменованный блок кода, который можно вызывать многократно. Может принимать аргументы и возвращать результат. запоминанием результатов (мемоизация) или обычным циклом — но сейчас важна сама идея рекурсииПриём, при котором функция вызывает саму себя. Нужен базовый случай, чтобы вызовы завершились..

Шаг 1 из 7