Алгоритмы на javascript. Стек и рекурсия.

В этом видео мы рассмотрим такую структуру данных, как стек, на примере стека вызовов в компьютере. Научимся решать задачки рекурсивным методом на простом примере и разберём задачку на расчёт факториала.
Мой телеграм канал: t.me/konstantinov_it
Задачи для самостоятельного решения.
На рекурсию:
1. Числа фибоначи - leetcode.com/problems/fibonac...
2. Степень двойки - leetcode.com/problems/power-o...
Популярная задачка на стек:
1. Валидная скобочная последовательность - leetcode.com/problems/valid-p...
Кстати, алгоритм быстрой сортировки тоже является рекурсивным. Пишите в комментарии, удалось ли решить все задачки

Пікірлер: 12

  • @Nic13595
    @Nic135952 ай бұрын

    Хорошая подача, понятное объяснение, продолжай, успехов.

  • @m3th0dmvn65
    @m3th0dmvn65 Жыл бұрын

    Спасибо за видео, великолепное объяснение! Решил задачки, освежил в памяти такую достаточно важную тему :)

  • @user-zt3rs8rc9j
    @user-zt3rs8rc9j Жыл бұрын

    Посмотрев видео в наглухо забитом автобусе понял, что аналогия с тарелочками больше похожа на автобус. Первый зашёл - последний вышел 😅

  • @exx-ns4tt
    @exx-ns4tt Жыл бұрын

    отличное видео! подписка! разбери деревья и рекурсивный обход по этой структуре данных.

  • @oktav2222
    @oktav22222 ай бұрын

    Спасибо

  • @user-te9ci1tx4x
    @user-te9ci1tx4x10 ай бұрын

    Хотелось бы увидеть реальные задачи на стеке, хотя 2-3, 🙏

  • @konstantinov_it

    @konstantinov_it

    8 ай бұрын

    На самом деле стек используется повсеместно. Например, реализация отмены через ctrl + Z в приложениях, как наиболее явный кейс. А так это любое использование массива в качестве сохранения состояния с учетом последовательности

  • @user-xt5sm6yj6f
    @user-xt5sm6yj6f Жыл бұрын

    Давай деревья)

  • @diggerdog001
    @diggerdog0016 ай бұрын

    Привет! Есть совет как быть уверенным в задачках с применением рекурсии? Я могу решить обычные задачи типа Фибоначчи и т.д. но если что-то связанное с массивами или вложенными объектами, то уже ступор. Очевидный ответ будет больше практики, но этот рубикон как перейти в понимании?

  • @konstantinov_it

    @konstantinov_it

    6 ай бұрын

    Привет! Это очень хороший и в тоже время сложный вопрос. Да, очевидным ответом - больше практики. Но что скрывается под этим? Сами по себе задачи требующие рекурсивного решения чаще всего далеко не самые простые, вроде задач на DFS, BFS и другие обходы деревьев. Конечно, нужно нарешивать от простого к сложному. Также может помочь визуализация с использованием бумаги и карандаша для отслеживания процесса в задаче, в частности рекурсии. Было время, я упарывался в решение задач на динамику, которые отчасти меняют мышление в подходе к решению задач. Попробуй, возможно, что решение сложных задач на динамику помогут развить необходимые навыки для использования рекурсии. По сути рекурсия - не единственный метод, которым можно решить задачу. Чаще всего есть и более линейные варианты (опять отсылка к динамике). Резюме: сложные задачи на то и сложные, и чтобы их научиться решать нужно просто прорешать их все, другого варианта не вижу. Со временем запоминаются определенные паттерны. Нарешивай задачи на одну тему, долгое время это будет тяжело, каждая новая задача будет как совершенно несвязанная с предыдущими на ту же тему, это нормально. Используй бумагу и карандаш для визуализации процесса и не пренебрегай чужими решениями для разбора, если не идет. P.S. Вряд ли я написал что-то новое, но ты и сам сказал, что очевидно только практика. При том долгая и упорная, в несколько заходов. Другого я не знаю.

  • @kktus
    @kktus Жыл бұрын

    Отличное видео, а что за микрофон?)

  • @konstantinov_it

    @konstantinov_it

    Жыл бұрын

    Спасибо! Fifine a8

Келесі