Рекурсия. Репка и матрёшка
HTML-код
- Опубликовано: 5 янв 2025
- Сказка "Репка". Крайний случай.
Прямой и обратный ход рекурсии.
Алгоритм изготовления матрёшки.
Программа, печатающая матрёшку.
Курс молодого бойца по информатике (Язык Си).
cs.mipt.ru/c_intro
Вариант с музыкой: ruclips.net/video/n3Q_FIJ6s-s/видео.html
Потерялись десять ньютонов в процессе, непорядок! ))) Или я чего-тоне понял?
ruclips.net/video/rJYf-h38i-o/видео.html
ой повезло повезло - преподователь сразу с музыкой делает уроки
А герои Русской сказки уже вкурсе что он лишь программы из мира машин? А их тела всеголишь батарейки для добычи 200 кН?
@@str1753 это матрица - людэ не существуе
- Папа расскажи мне сказку. - Какую? - Бесконечную.
Рекурсинувн
for(;;){}
@@IBmusic_vector while(true);
или так:
-папа, расскажи сказку
-про что?
-про то как ты рассказываешь сказку
-про что?
...
@@Ruslan-nj5zw а вот и юморист 1
Должен признаться очень интересный и оригинальный подход к подаче материала. Совмещение 2D элементов на доске с 3D объектами на столе создают какое то неописуемое погружение в процесс и заставляют, как то по особенному воспринимать информацию.
Спасибо, было очень интересно.
Да, я тоже кайфанул от этого)
Мастер спецэффектов) Спасибо, очень грамотно) Успехов!
Это просто какой-то умопомрачительный талант объяснять сложные вещи - простым языком. Спасибо!
дааа, лучший преподаватель имхо! свободно говорю на англ., но всегда пересматриваю его уроки уже на русском
Восхитительно оригинальный подход, спасибо!
Очень годный контент. Лучшее объяснение рекурсии во вселенной) Спасибо!
8 человек которые поставили дизлайк: репка, дедка, бабка, внучка, и далее по списку.
ахаххаахахахаха
Супер мило, Тимофей-нянька)) спасибо!
Парень молодец. Уважение и почет, что делишся своими знаниями с другими. Да и еще с такой подготовкой материала. Супер.
Как человек, который лучше воспринимает информацию визуально и у которого проблемы с пониманием рекурсии (были до просмотра видео) безумно благодарна вам, что разложили этого зверя на матрешки 😁
Было не только полезно, но и безумно интересно, не оторваться от просмотра)
Спасибо, посмотрела!
Хорошо (просто, образно и понятно) объяснил рекурсию! В институте, в конце 80-х, пару лет ловил этот образ, а тут всё так чётко и понятно! Молодец! Спасибо!
Светлая Голова, спасибо Вам большое!
Только талантливый человек может говорить о сложном просто.
Лучшего объяснения рекурсии не придумать!!! Да еще и на сказке) Спасибо!
Самое крутое и самое понятное объяснение рекурсии которое я видела в интернете! Спасибо огромное! Посоветую ваши видео друзьям!
Вайй,святые небеса!!😂 Наконец-то, я поняла,что такое рекурсия😂
Спасибо за знания УЧИТЕЛЬ!
Блин, это одно из лучших видео объяснений на простых вещах.
Огромное спасибо автору.
Одно из лучших объяснении про рекурсию)
Ты просто красавчик!!! Огромное спасибо
Тимофей, вы лучший объяснятор! Спасибо! Однозначный лайк
спасибо большое за ваши простые, но идеально подходящие под этот случай, примеры! Однозначно лайк и подписка!!
Гениально!!!
До сих пор не понятно - как люди изучали программирование, когда не было канала Тимофея?
Спасибо за объяснение, вы - супер! :)
Вы просто гений объяснений, спасибо!)
Все гениальное - просто. Спасибо за урок, после него я наконец смог самостоятельно разобраться в рекурсивном решении задачи про Ханойские башни.
давно программирую на С, но только сейчас нормально понял рекурсивную функцию:). Гениально простое объяснение!
Огромная благодарность.
Бесподобное объяснение рекурсии) Прям вот мое почтение)
Спасибо Вам за труд, это очень классно.
Спасибо за вашу работу. Очень выручают ваши ролики)
Самое лучшее объяснение!!! Спасибо :))
Это просто гениально. Спасибо огромное! Вы лучший
самое годное объяснение в youtube - благодарочка!!!
Системный блок как подставка для матрешек. Жестко.
ахаах эти демонстрации бесценны :D
Гениальный пример с репкой. Спасибо.
Спасибо Тимофей за Ваше время, не каждый умеет рассказать просто о сложном! Топ контент!
Супер пояснение! Спасибо!
матрешки изготавливают по обратной рекурсии. А так объяснение очень классное! Буквально на пальцах
Очень крутое объяснение!!! Аплодирую стоя!!!
Здоровья вам Тимофей ) шикарные уроки и понятные до предела )))
я понял рекурсию 😊. круто Тимофей Федорович. спасибо
Сколько не смотрел, так и не понимаю то, почему дед просто не вызывает второго деда. FeelsBadMan
А вдруг гони последние люди на земле и просто пытаются выжить в суровом мире. Там вон. Даже мышь понимает размах ситуации)
@@Такойсебе3дшник а может это последняя репка на земле, и делить они ее не хотят
Ответ в следующем ролике из плейлиста ;)
@@ЕвгенийВовк-ы7ь Я имел в виду что: У нас есть программа, и у неё есть ресурс в виде "Деда", который может тянуть 50 ньютнов. Так почему бы не сделать программу так, чтобы она сперва посмотрела на то, сколько ей ещё нужно дотянуть и такая "Ага, мне нужно ещё вытянуть 50 ньютонов и у меня есть как раз дедов на всю дозволенную RAM которые будут тянуть по 50 ньютонов... Пожалуй вызову я одного!" вместо того, чтобы вызывать бабку, дочку, собачку, кошку, МЫШКУ. (или пример таким, чтобы нужно было вытягивать не 100 ньтонов, а 120 например. Чтобы имела место рекурсия)
Я сейчас пишу как человек, который уже всё бросил (Да простят меня Центральный Процессор Всевышний да Святая Щперационная Система). Так что, прошу no offens.
Думаете дед с дедом живет, по американской традиции? Семья так - для прикрытия?
Большое спасибо, Тимофей!
Гениальное объяснение!
Я не знаю или я глупый или другие плохо объясняют, но видимо это мое идеальное объяснение рекурсии в программировании)))))
Невероятно! Спасибо большое за объяснение!
Даже гуманитарий понял 😄 спасибо!)
Когда объясняется, все понятно, а за дело берешься, то какая то магия) Трудно воспринимается, когда функция инициализируется данными из стека.
спасибо за подробное объяснение.
Спасибо за научное объяснение сказки "Репка" :)
Шикарная анимация!!!!!
Спасибо от Димули, 37 годиков за добрую сказочку ))
гениальная постановка :)
благодорю Тимофея за это видео
наконец-то хорошее видео про объяснение рекурсии
Круто, спасибо! Наконец-то понял рекурсивное программирование)
шиканое объяснение, спасибо ребята!
Залипательный контент у вас! Очень весело про нужное
Потрясающе! Спасибо за урок!!!
наконец-то я понял рекурсию. Огромное спасибо
Отличное объяснение! Спасибо 🤝
почему Вас не было в моем институте?! или наоборот)) Спасибо!
@@serjoberst6322 "Почему не Вы не были в не моём институте?"
@@MaxPV1981 абсурд
@@ralphlauren8349 Не может быть!
@@serjoberst6322 почему я не был в вашем институте?
почему мой институт не был в Вас?..
великолепное объяснение) спасибо!
Со стрелками и матрёшками забавно вышло)))
Сказка не только понравилась, но и пример на этой сказке. Мудрое решение.
Благодарность за Ваши уроки!!
Как на самом простом примере можно узнать сложное
очень креативно!!!,
Кайф! Спасибо!🍉
Спасибо! Здорово объяснили!!))
Талантище, преподаватель с большой буквы. жаль, что питон не объсняет.
Так лекция про рекурсия, а не Питон
бабка, какая у неё сила.... от души посмеялся
Спасибо!
Очень интересная подача !
Отличный урок !!!! На столько хорошо объяснил ! ( Правда я на js :) )
лучший, просто лучший.
Божественно!
Обалденно!
Тимофей, браво, отлично умеете ярко и просто показать рекурсию! Спасибо за ваш труд!
# программа на Python, демонстрация матрешек
def nesting_doll(num):
if num == 1:
print ('Цельная матрешка (дно рекурсии)')
else:
print ('Верхняя часть '+str(num)+' матрешки (прямой ход)')
nesting_doll(num - 1)
print ('Нижняя часть '+str(num)+' матрешки (обратный ход)')
nesting_doll(5) #вызов функции на Питоне
"""
загрузив ее сюда, можете наслаждаться визуализацией поэтапного ее выполнения
www.pythontutor.com/visualize.html
"""
Здравия! Круто! Так просто объяснить такую сложную тему это талант. Особенно порадовало привлечение народного фольклора. Молодёжи напомнить про корни. Несколько слух резануло слово "безделушки". На самом деле очень глубокий смысл есть в матрёшке. Означает семь наших тел. Непосредственно физическое, самое маленькое, и далее тела духовные. Тонкие материи. Нашим предкам это было известно. Оттуда же и слово "семья" произошло. Сказка "репка" тоже имеет очень глубокий смысл)
spasibo ochen dostupno
Спасибо! Потрясающе интересное объяснение! И, конечно, отдельно отмечу, как круто вы рисуете мелом на камеру и выставляете фигурки - действительно, мастер спецэффектов. Подскажите, кого можно посмотреть, кто так же круто объясняет рекурсию и всё остальное, но в связке с JS?
объясните пожалуйста как работает второй вызов функции f(n-1), что-то не понял почему выводит возрастающую последовательность цифр
Обычно приводят пример с оружейным магазином (ну, куда патроны всовывают) и патронами. Магазин - это стек. Патроны - это функции. Номера на патронах - это аргументы, т.е. передаваемые функции значения. Представьте, что у вас пистолет и n патронов. Пусть в данном случае n = 7. Вы пронумеровали этот патрон как 7 и поместили его в магазин. Здесь и дальше по тексту поместить патрон = вызвать функцию. А выстрелить = вернуть результат. Следующий патрон у вас будет с номером n - 1, т.е. в данном случае это номер 6. Его вы помещаете в магазин поверх того патрона с номером 7. След. патрон будет n - 1, где n уже равно 6, т.к. предыдущая функция хранит своё значение n, а не первоначальное. Т.е. получается, что третий патрон, который вы поместите в магазин, будет с номером n - 1, т.е. 6 - 1 = 5. И так далее, пока не выполнится заданное условие (оно может быть что-то типа if (n == 1) {Console.WriteLine($"Патрон номер {n}"); return;}
Это пример на синтаксисе языка C#. Т.е. вы будете помещать патроны в магазин до тех пор, пока последним патроном не станет тот, который вы пронумеруете единицей. На данный момент картина получается такая: магазин заряжен семью патронами, где патрон с номером 7 находится в самом низу магазина, т.к. его туда поместили самым первым. А самым верхним патроном является патрон с номером 1, потому что он был помещён в магазин самым последним.
Заметьте, что всё это время вы только помещали патроны, но не выстреливали. Т.е. функция пока что только вызывала сама себя, но ни разу не возвращала результата. А теперь, когда выполнилось заданное в if условие, вы начинаете выстреливать, т.е. возвращать результат. Когда совершится первый выстрел, патрон с каким номером вылетит? Правильно, с номером один. Т.е. этот патрон был помещён самым последним, а выстрелен самым первым. Так и в вашей программе первым вернётся результат той функции, которая была вызвана последней. Эта функция, которая была вызвана последней, первая возвращает свой результат той функции, которая была вызвана перед ней. Потом следующий выстрел. Вылетает патрон с номером 2. А патрон с номером 2 - это функция, которая была вызвана предпоследней и которой перед этим передался результат выполнения последней вызванной функции (т.е. той, которая вернула патрон с номером 1). И так до конца. Последним выстреленным патроном будет патрон с номером 7. Помещали вы его первым, а выстрелили последним (т.е. функция с этим значением вызывалась первой, а её результат вернулся последним). Этот результат уже вернётся туда, откуда первоначально вызывали данную функцию.
@@753bc9 Допустим. Но если нам нужен факториал n числа? То как происходит разворот рекурсии при возврате 1 и как потом идет умножение чисел по порядку по возрастающей? В какой момент происходит этот разворот и как функция понимает что ей нужно умножиться и тд? Вот именно этот момент всем непонятен. Лично я ищу его уже неделю(
@@YouMeNow88+
Классное видео!
Теперь каждому понятно)))
Каждый зверь, как функция
Спасибо вам большое))))
Салат рекурсивный: треть оругцов, треть помидоров, треть салата рекурсивного.
Получается, огурцов и помидоров 50%/50%. Но наверняка мы это никогда не узнаем)
)))
Нет вещи столь малой, в которую не вместилась бы ещё меньшая.
Нет столь великой вещи, которую не превзошла бы величиною ещё большая.
(с) Козьма Прутков
@@Dima_Dezhin Элементарные частицы ? - Не , не слышал ))
@Serg Reckhem фрактальная природа реальности
Благодарю!!!!
Классное объяснение=)
Также и на производстве выполнение задания: 1.начальник 10000$, 2.зам 7000$, . . . n.мастер 800$, n+1.работяга 400$. Сам был удивлён когда такое объяснение "зашло" 16-ти летним с первого раза.
Объясните кто понимает: почему после того как n стала равна 1, снова вывелось на печать 1, 2, 3... 7. Я понимаю что данные возможно были в стэке, но кто вызвал стэк? И как например сделать рекурсию чтобы не было этого вывода обратно к 7. Если бы это были переменные от задачи, выходит так что задача бы решилась, а потом снова разРешилась)))
Объясните, пожалуйста, почему после достижения крайнего значения начинается обратный ход?
Круто 👍
👍👍👍
Оригинально :)
you are just super
indus english
Это круто! :)