Тёмный

Python functions. recursion 

Python Hub Studio
Подписаться 199 тыс.
Просмотров 14 тыс.
50% 1

Lesson topic: recursion in python. In the lesson, we will consider recursion, how a recursive function is defined and the implementation of a recursive algorithm using the factorial as an example.
Let's compare recursion and the iterative approach to the implementation of the algorithm.
-------------------------------------------------- -------------------------------------------------- ----------------------------------------------
Become a channel sponsor and you will get access to exclusive bonuses. More:
/ @pythonhubstudio
-------------------------------------------------- -------------------------------------------------- ----------------------------------------------
Subscribe to the channel! Ask questions in the comments!
#PythonHubStudio
#python

Опубликовано:

 

26 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 35   
@АлександрЯнцевич-ф3и
Спасибо. Ваш урок очень помог в осознании данного понятия.
@karandalliik
@karandalliik 3 года назад
Молодец. Главное пробовать, стараться, работа над ошибками и снова в бой. Молодец!!!
@niktonikak1820
@niktonikak1820 5 месяцев назад
как мана небесная, ваша видео посыпалось мне на голову. Спасибо большое
@РикСанчез-к6ъ
@РикСанчез-к6ъ 9 месяцев назад
Спасибо понятно обьяснил
@lasorciere3954
@lasorciere3954 Год назад
Как приятно Вас слушать! И рекурсия уже не такой непонятной кажется))
@nadyamoscow2461
@nadyamoscow2461 3 года назад
Большое спасибо. Отличное объяснение.
@МаксимПустота-х9м
@МаксимПустота-х9м 2 года назад
Спасибо за Ваш труд.
@Myasn1kov
@Myasn1kov 2 года назад
Шикарная подача материала! Спасибо)
@vladimirzelov
@vladimirzelov 3 года назад
Бро у тебя очень крутая подача, но очень плохой звук .....
@semion.shandruk
@semion.shandruk 2 года назад
после return можно не писать else, потому что return при вызове прекращает действие цикла
@uriukti
@uriukti Год назад
В данном случае else относится как и всегда и обычно к условию в if. Первый return срабатывает если выполняется условие в if. А если оно не срабатывает, то - else.
@uriukti
@uriukti Год назад
Тут не сразу st == 0
@Великолепие-т2х
@Великолепие-т2х 2 года назад
Очень полезно, спасибо вам )
@rop_grop
@rop_grop Месяц назад
На простых задачах понимаю как использовать, но на сложных нифига. И все эти картинки про картинки в картинках, матрешки и тп, которые любят приводить в пример, вообще ни о чем. Только кажется что понимаю, но бац, какая-то задача и офигеваешь, когда пытаешься понять как оно работает.
@PythonHubStudio
@PythonHubStudio Месяц назад
Никто сразу новый вариант рекурсии сходу не понимает
@Psoglawec
@Psoglawec 2 года назад
Понял только одно - рекурсия редко применяется и это главное.
@nickyr42
@nickyr42 2 года назад
на собеседованиях применяется))
@ni7688
@ni7688 Год назад
Спасибо 😘
@akramyuldoshev4889
@akramyuldoshev4889 4 года назад
спасибаа вам класна
@PythonHubStudio
@PythonHubStudio 4 года назад
Пожалуйста!
@КымбатАмангелдинова-ю3с
Здравствуйте, Извините за беспокойство 😊 Помогите пожалуйста 🙏 Значение cos(x), при xизменяемом от 0.1 до 1 с шагом 0.1 можно вычислить с помощью следующего ряда: Y=1 - x^2/2! + x^4/4! - x^6/6! +...+x^2n/(2n)! Вычисления y для каждого значения x выполнять с точностью 0.00001. Результат представить в виде таблицы x, y, cos(x).
@marinazed6732
@marinazed6732 6 месяцев назад
Зачем писать else? Разве недостаточно просто написать return n * fact(n-1)
@PythonHubStudio
@PythonHubStudio 6 месяцев назад
Да, достаточно
@madcrow1592
@madcrow1592 3 года назад
хлопаю стоя хе
@axelpoint
@axelpoint 3 года назад
Можете пояснить на что умножается num в этом коде? Ведь там два аргумента в скобках. return num * some(num, st - 1)
@PythonHubStudio
@PythonHubStudio 3 года назад
num умножается на на return результата some(num, st-1). num * some(num, sr-1) ==> num*num*some(num, st-1),и так далее, пока не получится: num*num*num*num*num*1 То-есть num после каждого перезапуска функции становиться меньше на 1
@Ооо-д2к
@Ооо-д2к 3 года назад
Поясните пожалуйста, почему возвращается ответ, а не 1, когда st становится равным 0? ведь if st==0: return 1
@PythonHubStudio
@PythonHubStudio 3 года назад
Каждый цикл рекурсии что то возвращает. И накапливается 5*4*3*2*1после return 1 перемножаются и получается ответ. См. другой комментарий
@Srg.H
@Srg.H 3 года назад
Поясните пожалуйста. В какую переменную записывается умножение num * some(num-1) за каждый проход?
@PythonHubStudio
@PythonHubStudio 3 года назад
Ни в какую, в точке вызова накапливается выражение, и когда рекурсия заканчивается происходит расчет num*num*num....
@Srg.H
@Srg.H 3 года назад
@@PythonHubStudio теперь понял. Спасибо!
@uriukti
@uriukti Год назад
Я конечно дико извиняюсь, и никоим образом не хочу никого обидеть....но. Я понимаю, после просмотра этого урока, что автор сам плавает в понятиях о рекурсии. Автор, пожалуйста, объясните ход выполнения кода (хотя бы частично) с использованием разъяснений о том, когда (в какой строке), какие данные попадаеют в стек, и когда (в какой строке) они из стека извлекаются, и после извлечения в какую строку происходит переход интерпретатора. Спасибо заранее. Тогда всем действительно станет понятно как работает рекурсия. P.S. потому как то, что вы назвали хвостовой рекурсией, при знании внутренней работы стека, если написано правильно не вызывает заполнения этого стека более чем на верное, рассчитанное колличество вызовов, которые оперативно используются, и своевременно отправляются/вынимаются из стека.
@uriukti
@uriukti Год назад
Но тут беда в другом. Не в том, что я написал как претензию. А то, что у меня складывается ощущение, что никто до конца не понимает рекурсию. И в этом наша слабость. Я тоже её не понимаю до конца. Со стороны внутренних процессов. А поэтому ищу тех, кто расскажет до конца. Это важно! Мы никогда не будем сильными программистами, пока не будем знать это досконально.
@PythonHubStudio
@PythonHubStudio Год назад
Тут беда не в том, а в том что видео показывает и объясняет рекурсию на примере кода, то есть как это реализовать. Хотите изучить стек? - запустите отладчик и будет вам информация о стеке.
Далее
Рекурсия. Репка и матрёшка
18:37
Просмотров 118 тыс.