7 простых идей и подходов из теории алгоритмов

#soer #itubeteam
Основной канал для общения и публикации новых видео - Телегарм - t.me/softwareengineervlog
Спонсорство - donate.s0er.ru
Сайт платным контентом - soer.pro
Зеркало для видео Дзен Видео - zen.yandex.ru/id/5f578bdf22e2...
GitHub - github.com/soerdev
Чат для программистов - / discord
Группа ВК - codeartblog

Пікірлер: 80

  • @kselnaag2482
    @kselnaag24822 жыл бұрын

    Рекурсия, мемоизация, динамическое программирование, жадные вычисления, ленивые вычисления - было бы очень интересно услышать от вас разбор этих понятий, в т.ч. применительно к функциональному программированию, желательно на примерах.

  • @antoxatube

    @antoxatube

    2 жыл бұрын

    желательно на примерах js :)

  • @doopath8737

    @doopath8737

    2 жыл бұрын

    поддерживаю

  • @user-rq6tm5iw2p

    @user-rq6tm5iw2p

    2 жыл бұрын

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

  • @freddyfox1
    @freddyfox12 жыл бұрын

    Каждый раз когда слышу "Этот канал для тех кто хочет разбиратся в программироании лучше", на душе приятно становится. Спасибо за видео!

  • @bdick8136
    @bdick81362 жыл бұрын

    Годно. Мне нравится формат видео на 20+- минут на этом канале. Для перебора с возвратом еще можно встретить название альфа-бета отсечение. Жадные алгоритмы могут выдавать не оптимальные значения на некоторых типах задач, тут надо внимательно смотреть на свою задачу прежде чем принимать решение об использовании. Разделяй и властвуй хорошо подходит для многопотока, т.к. кэшу удобно, минимум синхронизаций.

  • @Iaxls
    @Iaxls7 ай бұрын

    Прекрасное объяснение! Благодарю за проделанную работу!👍

  • @VladiqLot
    @VladiqLot2 жыл бұрын

    Ребят! Книга "Грокаем алгоритмы" практически на пальцах (проще просто уж некуда, это не из тех книги, где для описание алгоритмы применяется математическая выкладка на всю страницу) рассказывает про многие темы затронутые в видео. Лучше всего - изучать книгу и реализовать алгоритмы самому на своем языке программирования или любом другом. В самой книге, однако, я лично нашел пару ошибок в самих алгоритмах когда пытался их реализовать на PHP. Дерзайте и удачи.

  • @romanpiarce

    @romanpiarce

    Жыл бұрын

    что за ошибки?

  • @ReAgent003
    @ReAgent0032 жыл бұрын

    Спасибо. Видео про абстракции. Появилась идея для ролика: решить одну-две алгоритмические задачки на практике (прям с кодом), применив жадный алгоритм, алгоритм Дейкстры или какой-либо другой. Примеры задач: 1. Задача о N ферзях на шахматной доске NxN 2. Задача коммивояжёра 3. Поразрядная сортировка

  • @user-wk3nu3ud2u
    @user-wk3nu3ud2u2 жыл бұрын

    Спасибо, было интересно и по времени то что надо!

  • @kekbek1526
    @kekbek15262 жыл бұрын

    Последние видосы радуют. Мне нравится в какую сторону развивается канал.

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

    Теоретический минимум по Computer science. 🙂

  • @Someone-tz2vs
    @Someone-tz2vs2 жыл бұрын

    Как всегда прекрасно. Спасибо)

  • @user-sn3mg8wk7v
    @user-sn3mg8wk7v2 жыл бұрын

    Спасибо, очень интересно.

  • @alexpunch3036
    @alexpunch30362 жыл бұрын

    прекрасное видео! Спасибо большое! Уже не так страшно смотреть на алгоритмы)

  • @enkryp
    @enkryp2 жыл бұрын

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

  • @olexkov4643
    @olexkov46432 жыл бұрын

    Было интересно как всегда.

  • @user-ot8bs7mk4p
    @user-ot8bs7mk4p2 жыл бұрын

    Круто! Спасибо

  • @silkcode3178
    @silkcode31782 жыл бұрын

    Многое понял и этой лекции так скажем. Спасибо огромное автору

  • @user-kt9sk1fw9k
    @user-kt9sk1fw9k2 жыл бұрын

    Большое спасибо!

  • @champ__champ
    @champ__champ2 жыл бұрын

    Нереально крутой контент!! Спасибо вам большое!!! Очень не хватает разбора конкретно на примерах, работы с массивами объектами и тд!!! НУУУЖЕН КОД!!!

  • @user-nh3pw8ze5c
    @user-nh3pw8ze5c2 жыл бұрын

    Спасибо! Рад новым видосам с твоего канала, темы стали может более простые, но по мне более интересные. Похудел )

  • @NovikDima
    @NovikDima2 жыл бұрын

    Спасибо!

  • @Stalker-of6bn
    @Stalker-of6bn2 жыл бұрын

    Мне понравилась сама мета идея обобщить подходы из теории алгоритмов. Спасибо. После просмотра возникло приятное теплое ощущение понимания (к сожалению задачки на собесе в Яндексе быстро разбивают эту иллюзию). Я бы возможно предложил бы немного еще капнуть в сторону раскрытия поняти сложности алгоритмов O(n). Например, показать, что даже если нас просят отсортировать массив пузырьком, НО при помощи одного цикла (а не двух вложенных), то сложность пузырька все равно O(n*n). То есть дело не в количестве циклов, а в количестве операций сравнения.

  • @Army_of_Earth

    @Army_of_Earth

    2 жыл бұрын

    А почему O(n^2), а не, скажем, O(n^3)? Как под одномерному циклу определить количество операций сравнения произвольного списка "на глаз"?

  • @Stalker-of6bn

    @Stalker-of6bn

    2 жыл бұрын

    @@Army_of_Earth я как раз и обратил внимание, что сложность определятся не по циклу, а по количеству операций сравнения. Что касается O(n^2) - в худшем случае нам нужно сравнить каждый элемент с каждым. Поэтому и выходит n*n.

  • @asumptio
    @asumptio2 жыл бұрын

    Спасибо

  • @l7l7l7lful
    @l7l7l7lful2 жыл бұрын

    Жалко у вас нету курса по программированию, я бы тогда с удовольствием стал спонсором.

  • @user-pg8ry1tm3t
    @user-pg8ry1tm3t2 жыл бұрын

    Великолепно, то, что нужно! Спасибо большое за видео!

  • @markkovalyov9492
    @markkovalyov94922 жыл бұрын

    Я-бы предложил в список включить подход генетических алгоритмов. Как универсальный инструмент для решения задач поиска минимумов-максимумов сложных функций.

  • @MaximRovinsky
    @MaximRovinsky2 жыл бұрын

    Часто на интервью просят решить задачу, не используя рекурсию. Имейте ввиду

  • @whatever6223

    @whatever6223

    2 жыл бұрын

    @@xtrll Не всегда. Например, с деревьями итеративные алгоритмы сложнее рекурсивных

  • @vladimiralkin

    @vladimiralkin

    2 жыл бұрын

    Странно. Почему так?

  • @user-pg8ry1tm3t

    @user-pg8ry1tm3t

    2 жыл бұрын

    Спасибо за инфо. Это резонно, поскольку итерация гораздо менее ресурсозатратная вещь, нежели рекурсия.

  • @TwilightSun32

    @TwilightSun32

    2 жыл бұрын

    понимание как переписывать рекурсию на цикл со стеком оно должно быть. можно попробовать на простых алгоритмах заранее и понять принцип. Причем это ещё круто тем, что например при обходе графа (или чего-то представимого в виде графа) можно менять стек на очередь и получать обход вширь вместо вглубь.

  • @albrehtdurer557

    @albrehtdurer557

    2 жыл бұрын

    да, одной командой sql

  • @saigon9505
    @saigon950510 ай бұрын

    Немного нехватает примеров кода, но зато есть направление в которое можно идти чтоб глубже понять тему

  • @Trixter9000
    @Trixter90002 жыл бұрын

    После недели бурления говен в твиттере, по поводу ненужности алгоритмов, рад этому видео.)

  • @igroykt
    @igroykt2 жыл бұрын

    надо на трезвую голову пересмотреть. интересно.

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

    Чтобы понять рекурсию нужно понять рекурсию)

  • @infdox9051
    @infdox90512 жыл бұрын

    Распараллеливание это еще и метод управления людьми с точки зрения менеджера.

  • @denyskorolkov
    @denyskorolkov2 жыл бұрын

    Было бы здорово видеть термины на двух языках: русском и английском. Может помочь в поиске иностранных материалов для дальнейшего изучения.

  • @AlexFour
    @AlexFour2 жыл бұрын

    Спасибо, эхх... алгоритмы никогда не были моей сильной стороной

  • @iiepe1915
    @iiepe19152 жыл бұрын

    мемоизация чем-то похожа на наследование в классах)

  • @wolf_code
    @wolf_code2 жыл бұрын

    Хорошее объяснение, но слишком абстрактно Кстати решение задачи 8ми ферзей в Функциональном стиле при помощи поиска с возвратом есть тут kzread.info/dash/bejne/pWtnm7KBnKmoZJc.html

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

    Привет. Вопрос не по теме. Как щетовидка? Всё норм?

  • @punchyarchy8850
    @punchyarchy88502 жыл бұрын

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

  • @JacobAkulov
    @JacobAkulov2 жыл бұрын

    Чтобы понять рекурсию нужно понять рекурсию

  • @user-fc4iv9xv1j
    @user-fc4iv9xv1j2 жыл бұрын

    А ведь я могу использовать Мемоизацию, в выделенном участке применить Разделяй и Властвуй, а уже в разбитых блоках Перебор с возвратом? То есть мало понять и применять алгоритмы. Надо бы осмыслить как эти алгоритмы грамотно композировать для решения общей задачи....

  • @user-qx3jt8fw1v
    @user-qx3jt8fw1v2 жыл бұрын

    Для чего было делать два канала ?

  • @user-ug9vh3rf1o
    @user-ug9vh3rf1o2 жыл бұрын

    Вопрос гуманитария

  • @Mike58128
    @Mike581282 жыл бұрын

    Можно примеры с кодом? А то половина сказанного непонятна.

  • @LordZiegfrid
    @LordZiegfrid2 жыл бұрын

    За 12 лет ни разу не писал алгоритмы, потому, что есть все необходимые коллекции. А вместо рекурсии лучше писать хороший код.

  • @semax5263

    @semax5263

    2 жыл бұрын

    А что ж ты на собеседованиях рассказывал?

  • @LordZiegfrid

    @LordZiegfrid

    2 жыл бұрын

    @@semax5263 такое не спрашивают, а если спросят делайте выводы

  • @iridiumhawk

    @iridiumhawk

    2 жыл бұрын

    Согласен. Разбираться в рекурсии такое себе удовольствие. А ведь главная задача программиста - создавать поддерживаемый код.

  • @user-ub4mr5dp4q
    @user-ub4mr5dp4q2 жыл бұрын

    Сори, но индекс «M» стоит поставить посередине)

  • @1afterall
    @1afterall2 жыл бұрын

    ...Звук тиховат...

  • @user-yd7ds6po4l
    @user-yd7ds6po4l2 жыл бұрын

    Автор плохо понимает, о чём вообще теория алгоритмов

  • @S0ERDEVS

    @S0ERDEVS

    2 жыл бұрын

    Если вы ограничиваете теорию алгоритмов только теорией вычислений и сложности, то это вы скорее не понимаете что такое теория алгоритмов. Ну или нужна конструктивная критика, а не субъективная оценка ни на чем не основанная кроме ваших заблуждений.

  • @manOfPlanetEarth

    @manOfPlanetEarth

    2 жыл бұрын

    обоснуй с конкретикой или ты балабол.

  • @user-yd7ds6po4l

    @user-yd7ds6po4l

    2 жыл бұрын

    @@manOfPlanetEarth О НЕТ ТОЛЬКО НЕ ЗВАНИЕ БАЛАБОЛА ОТ РАНДОМА ИЗ ИНТЕРНЕТА

  • @manOfPlanetEarth

    @manOfPlanetEarth

    2 жыл бұрын

    @@user-yd7ds6po4l а у тебя выбора нет. ты сам себя отныне назовешь бабалобом. вали отсюда.

  • @user-zg2bx5cb3d
    @user-zg2bx5cb3d2 жыл бұрын

    Очень поверхностно. "Ну вот есть задача да, ну вот там её решили по частям и всё" как будто бы в универ вернулся: много слов, смысла и пользы 0

  • @S0ERDEVS

    @S0ERDEVS

    2 жыл бұрын

    Мне бы пригодилась конструктивная, а не эмоциональная критика. Поэтому если есть конкретные замечания, то я готов их рассмотреть и исправить в будущем.

  • @user-zg2bx5cb3d

    @user-zg2bx5cb3d

    2 жыл бұрын

    @@S0ERDEVS больше примеров, конкретных случаев, вокруг которых рассматривается теория. Если есть расчёт на новичков в аудитории ролика, то ещё больше примеров.

  • @kekbek1526

    @kekbek1526

    2 жыл бұрын

    Не согласен. Таких видос (с конкретными примерами на пару часов) хватает, а это скорее пища для размышлений. Примеры можно и самому нагуглить.

  • @user-zg2bx5cb3d

    @user-zg2bx5cb3d

    2 жыл бұрын

    @@kekbek1526 это пересказ примитивных учебников для тех, кто не умеет читать. А чтение таких пособий займёт... минуты две и будет закончено из-за скуки

  • @S0ERDEVS

    @S0ERDEVS

    2 жыл бұрын

    @@user-zg2bx5cb3d абсолютно все что я могу сказать есть в учебниках. Куча примеров есть у Кормена, Скиены и других авторов. Цель этого видео не повторять учебники, а показать связь между алгоритмами и реальной работой.

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

    прекрасное видео! Спасибо большое! Уже не так страшно смотреть на алгоритмы)

Келесі