Найти в Дзене
Python с 0 до Junior

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

🔥Чувак, теперь ты знаешь, что такое рекурсия🔥

🔥Чувак, теперь ты знаешь, что такое рекурсия🔥

🔥Чувак, теперь ты знаешь, что такое рекурсия🔥

Нет, меня не затроило😁

Я решил Вам показать, что такое рекурсия, но картинка отражает эту суть лучше, чем текст.

В чем главная особенность рекурсивных функций?

Эта функция обращается к себе внутри себя - ты можешь это себе представить😲

Приведу короткий код для более приятного понимания

def counted(i): # Создали функция
print(i) # Печатаем число
if i <= 0: # Если число стало меньше 0, то выходим из функции
return
else:
counted(i - 1) # Если с числом все хорошо, то вызываем функцию на 1 меньше

Бинго🔥

Но все ли так хорошо и весело, как кажется?

Дело в том, если бы я не добавил условия, то она бы зациклилась и улетела в бесконечность, и наш компьютер сгорел бы от стыда, потому что за ним сидит бестолковый программист😖

Но мы добавили условия выхода и не допустили этого, потому что мы классные.

А это весь алгоритм и все?

На самом деле, рекурсия - это не алгоритм, это прием.

1. Рекурсия применяется в задачах, где необходим поиск в глубину

2. Очень хорошо использовать рекурсию в задачах с факториалом

3. Числа Фибоначчи также не против рекурсии, а очень даже ЗА

Меры предосторожности🚫

1. Читай функцию и не допускай зацикливания

2. Добавляй условия выхода из функции

Вывод...

Рекурсия - это круто.

Решая задачу, подумайте, можно ли решить ее с помощью рекурсии?

Не заставляйте Ваш компьютер сгорать от стыда

Всем хорошего дня, не переключайтесь

Python с 0 до Junior🐍