How To Learn Algorithms? Why?
Вставка
- Опубліковано 26 гру 2018
- Blog Post in English: codonaft.com/how-to-learn-alg...
🎓 МАТЕРИАЛЫ к видео: bit.ly/3vksKMz
7 методов разработки алгоритмов простыми словами.
Как алгоритмы связаны с машинным обучением?
00:31 Зачем это изучать?
01:40 Методы разработки алгоритмов
02:08 #1. Метод грубой силы / полный перебор / исчерпывающий поиск (Brute-Force)
03:23 Что делать, когда не получается решить задачу?
03:38 #2. Разделяй и властвуй / метод декомпозиции (Divide and Conquer)
04:26 Уменьшай и властвуй (Decrease and Conquer)
04:53 Примеры задач
05:40 #3. Динамическое программирование (Dynamic Programming)
06:02 Сверху вниз / Мемоизация (Top-down / Memoization)
06:53 Снизу вверх / Табуляция (Bottom-up / Tabulation)
07:07 Примеры задач
07:34 #4. Жадный алгоритм (Greedy Algorithm)
09:01 Примеры задач
09:33 #5. Поиск с возвратом (Backtracking)
10:09 Метод ветвей и границ (Branch and Bound)
11:43 Примеры задач
11:56 #6. Локальный поиск (Local Search)
12:47 Суть
13:10 Примеры задач
13:34 #7. Преобразуй и властвуй / метод преобразования (Transform and Conquer)
14:01 Примеры задач
14:42 Анализ алгоритмов и другое
15:13 Так всё-таки зачем?
17:50 Итоги
Использованные видео:
• • Введение в системное м...
• • K-Means Clustering - T...
• • 017. Малый ШАД - Алгор...
• • MERGE SORT ALGORITHM |...
• • Lecture 19: Dynamic Pr...
• • Dynamic Programming
• • What is backpropagatio...
• • Как устроен формат mp3?
• • Gradient descent, how ...
• • Fog in the Forest - Al...
Использованная музыка (распространяется на условиях лицензии CC BY 4.0):
• Chris Zabriskie - CGI Snake
• Chris Zabriskie - Wonder Cycle
Кодонафт в соцсетях:
• Telegram: t.me/codonaft_official
• Facebook: / codonaft
👍 Поблагодарить меня можно поделившись этим видео с друзьями
❤️ Другие способы поддержать: codonaft.com/ru/sponsor
#алгоритмы #программирование #учеба #codonaft
я по превьюшке подумал что ты будешь говорить что это все от лукавого и нужно молиться)))
добре)))
У технарей отличное чувство юмора
орнул
👏👏👏
Аминь брат )
Приятно удивлён сочетанием:
а) концентрации информации (без повторов и растекания мысли по древу)
б) целостности рассказа (как упомянуты общие цели, так и приведены детали)
в) дикции рассказчика
Почти идеальное summary. Респект. 8)
У человека практикующего и мозг структурирован.
он же использует алгоритмы
По древу мысью растекаются, а не мыслью. Мысь - это мышь, белка по старорусски.
Это же не человек, он даже не моргает
да тоже хотел сказать. практически идеальная манера изложения для образовательного видео.
nowadays Jesus teaches us programming
да, у него вид медийного Иисуса
Самозванец. Настоящий Иисус -
Volodya Mozhenkov.
Your comment made my day!
Omg, Jews lied us 2000 years. Jesus is Russian
Максим Черемисов Originally this guy spoke in English. It’s just translation
Голос четко поставлен, слушать приятно, но ты моргай плз
это бот
😄 😄 😄
у него много склеек(я капитан очевидность)
@@ozaliummilfg4520 спецом чтобы не моргать
)))
Боже как это понятно рассказано. Я дальше сортировок не уходил,а тут прям повод есть использовать их где-то еще.
Спасибо за видео .
Классное, краткое, объемное, понятное, вайбовое разъяснение. Самое то для новичка
Великолепный видосик! Эпизоды студию! Блестяще!!!!
получил удовольствие от прослушенного, особенно порадовало краткое резюме в самом конце. ты молодец!
Спасибо за видео, пожалуй после просмотра этого видео начну свой долгий и тернистый путь в долину алгоритмов)
Я вообще не программист в традиционном понимании (но серьезно занимаюсь "работой с информацией") и это очень неожиданно: не только услышать заявку на системность, но и реальное раскрытие заявленной темы. Благодарю! И забейте, пусть другие моргают, бреются и все такое.. наличие змызлов все компенсирует)
Половина кажется чем-то простым(то, что изучала и писала), а что-то просто невероятным чем-то😅 Спасибо за видео, оно классное и проясняет куда двигаться дальше😌
Начал смотреть, очень удивила такая нарезка с непрерывным потоком информации - на самом деле очень четко и понятно, однозначно лайк❤
00:31 Зачем это изучать?
01:40 Методы разработки алгоритмов
02:08 #1. Метод грубой силы / полный перебор / исчерпывающий поиск (Brute-Force)
03:23 Что делать, когда не получается решить задачу?
03:38 #2. Разделяй и властвуй / метод декомпозиции (Divide and Conquer)
04:26 Уменьшай и властвуй (Decrease and Conquer)
04:53 Примеры задач
05:40 #3. Динамическое программирование (Dynamic Programming)
06:02 Сверху вниз / Мемоизация (Top-down / Memoization)
06:53 Снизу вверх / Табуляция (Bottom-up / Tabulation)
07:07 Примеры задач
07:34 #4. Жадный алгоритм (Greedy Algorithm)
09:01 Примеры задач
09:33 #5. Поиск с возвратом (Backtracking)
10:09 Метод ветвей и границ (Branch and Bound)
11:43 Примеры задач
11:56 #6. Локальный поиск (Local Search)
12:47 Суть
13:10 Примеры задач
13:34 #7. Преобразуй и властвуй / метод преобразования (Transform and Conquer)
14:01 Примеры задач
14:42 Анализ алгоритмов и другое
15:13 Так всё-таки зачем?
17:50 Итоги
🎓 Подборка материалов и другие бонусы: bit.ly/2SngkLo
👍 Поделитесь этим видео с друзьями!
IT-индустрии очень не хватает хороших разработчиков сейчас!
Добрый день. Хочу выбрать и изучить набор алгоритмов, которые на мой взгляд нужно знать как базу. А чтобы понять что такое база, нужно как минимум нарисовать mindmap схему. Но мне трудно это сделать. Уже более 10 лет в программировании, но всегда всё сводилось к использованию библиотек. Сейчас погуглил книги и видео в ютубе. Пролистал довольно много оглавлений книг начиная с небольших книг и заканчивая "Алгоритмы, построение и анализ(Кормен Лейзерсон ...)". И понял, что не могу составить хоть какую-то структуру в голове, которая отвечает на все вопросы, которые помогли бы мне составить mindmap для последовательного изучения от простого к сложному.
Вот и у вас тоже больше мотивационное видео, чем некая понятная структура всех алгоритмов.
Вот в этом интересно разобраться. Можете какую-то структуру по набору алгоритмов, например из той же книги "Алгоритмы, построение и анализ(Кормен Лейзерсон ...)" взять и как-то структурировать с комментариями?
И ещё такой вопрос прикладной. Недавно был на собеседовании и задали задачку : есть массив 10^5 элементов(много в общем) и нужно элемент, который ближе к концу массива переместить ближе к началу. При этом, все элементы из начала должны сместиться к концу.
Это к тому, что хочу уметь искать решения подобных задач с точки зрения того, в каком разделе книги "Алгоритмы, построение и анализ(Кормен Лейзерсон ...)" находятся решения подобных задач.
За чем так быстро подавать материал !? Лучше больше роликов но более детальный обзор по каждому и первая вводная должна быть более связующей и обобщений для правильного вложение материала скажем как основа а остальное второстепенно стройте дерево а не лианы и кусты . Выдача вашего материала как град созревших яблок когда трусишь дерево . Нужно добавить чуток лёгкой беседы вы же не у доски стоите , чуток теплее подачу . Все проще чем кажется )))
Два года прошло, но... Это сообщение пришпилить надо.
Респект ✊🏼 ещё видео уроки плиз 🥺
Очень классно рассказываете, очень приятно слушать. Благодарю за изложение. Успехов))
Изумительно! Спасибо большое. Все четко, понятно.
Саша, очень интересно подаешь информацию! Спасибо, подписался! ;)
Максимально ясно, доходчиво и без воды. Люблю такой формат. Мой запрос: что-нибудь по Big Data, AI в той же манере.
что тут будет ясного для самоучек не пойму. Просто так запустить самоучек учиться алгоритмам зря, если самоучка то лучше получать реальный рабочий опыт, и тогда будешь понимать что действительно нужно.
Вот если бы я был самоучкой то(согласно ролику) решил бы, что нужно идти изучать преобразование фурье, ну я эту тему проходил в универе, и могу сказать, что самому реализовывать этот алгоритм нету ни какой необходимости есть библиотеки. То что, ты сам в ручную можешь написать разложение в ряд Фурье мне кажется не является плюсам в глазах работодателя. Просто да дает лично разработчику лучшее понимание темы и т.д., по этому если хочешь прокачать мозги это одно, а если решать задачи бизнеса, то там не всегда нужно прям такое доскональное понимание, скорей важно ориентироваться в не знакомой обстановке, потому как доскональное знание это узко направленное дело, а задачи бизнеса это более широкий спектр задач.
А гугл так отбирает, конденсатов, только в силу то го, что там сильно много желающих, по этому и вводится дополнительные критерии для отбора.А если стоит задача там с bigData работать, так проще получить доп образование в Универе и так сказать с математическими познаниями уже оперировать.
Thanks for the detailed explanation. This question has had me tied up for a long time.
Отличное видео, большое спасибо
Появилось желание изучить алгоритмы
Благодарю за отличную работу! Хорошая подача материала и отличнейший видеоряд !!!
Дружище , ты единственный из всех блогеров, которому я готов платить за обучение.
Жаль что подписоты мало, но все в переди!
@You Tube Скорее ты повод ищешь, чтобы всем одну свою извилину показать)
@@sergeys9119 урыл, получается)
@You Tube обучатЬся
Спасибо, человек. Ты дал мне мотивацию! и образ мышления компаний.
Я много раз использовал "градиентный спуск" даже не заморачиваясь, считая этот метод своим костылём, из-за неумения сделать лучше, а оказывается что это настоящий рабочий метод решения задач ))
Same)
Чувак ты очень сильно мотивируешь.Продолжай снимать ролики.
как же круто ты приподнёс инфу. всё, грокаю алгоритмы теперь
Очень интересное видео. Автору респект и большое спасибо за ссылки на материалы
Толково раскладываете тему. Интересно. Спасибо!
жду продолжения с нетерпением!
Привет, прошу выпускай ещё видео, очень зашло
Спасибо за Вашу работу. Пожалуйста, продолжайте. Учиться буду у Вас в том числе
Очень круто, пожалуйста продолжай создавать! Очень классное видео, дохотчево, простым языком и интересно. Не останавливайся!
Алгоритмы это сложная дисциплина но очень очень эффективная!
За много лет впервые дошло. Идеально объяснил
Привет! очень круто рассказано, очень интересно увидеть бы развитие темы т.е. плейлист по алгоритмам и структурам данных
Спасибо огромное! То что нужно, вдохновился
Спасибо, ждем новых видео)
Спасибо за подбор материалов
Спасибо, очень информативное видео!
Дай Бог тебе здоровья добрый человек за то, что меньше, чем за 20 минут, ты смог объяснить на порядок больше, чем Кнут своим тысячестраничным талмудом
у Кнута и не стоит задача заинтересовать тебя. Он занят тем, что объясняет уже заинтересованным.
@@AlexCSharp здесь вопрос интереса не стоИт совсем, только вопрос выбора: я предпочту за 20 минут уловить суть и при необходимости погрузиться в деталь, чем тратить недели в ожидании "а когда же уже суть/вывод будет-то"? Не говоря уже про типичный забугорный формат повествования, когда первые 30-40 листов книги можно пропустить, потому что там "спасибомамепапебабушкесобаке" и далее на каждых десяти страницах размазано так, что можно уместить на одну. Краткость - сестра таланта😉
@@johnsilver1988 Ну, первые страницы у всех, хороших в том числе, книг, как раз посвящены вступлению. Не вижу в этом проблемы, ведь есть оглавление.
Книги по программированию не надо читать как художественную литературу, это больше справочная информация: созрел до чего-то, узнал что-то - ищешь решение или погружаешься в это. Я все книги обычно читаю прыгая с главы на главу, постепенно, параллельно несколько, иногда по разным темам. Типа одна по платформе - погружаюсь в инструменты и подкапотное, другая по архитектуре - погружаюсь в... Понятно, архитектуру, и 3 по кодстайлу - проверяю свой стиль, и т.п.
Ну и плюс источник никогда не должен быть один, никогда. Вот ты что-то у Кнута почитал, не понял, глянул ютубчик - вектор появился, вернулся к Кнуту - понял больше, прыгнул на Стивенса или Бхаргаву - бац, картина мира сложилась.
@@AlexCSharp Согласен
@@AlexCSharp вот спасибо за коммент, а то ругаю себя за перескоки по главам. Оказывается это вполне рабочая модель самообучения.
Можно еще видео по алгоритмам!
Сложно все и сложно будет всегда, а учится хочется ещё сильнее чем мне сейчас сложно, поэтому любые видео по алгоритмам очень жду! Спасибо тебе!
Ну вот, и видео такая годнота, и комментарии до сих пор лайкаешь, очень жаль что перестал выпускать контент
даже буква понимает алгоритмы...
Глубокий и хорошо осведомленный специалист, молодец, отлично мотивируете, нас лентяев.
спасибо за отличное видео и ссылки на ресурсы!
Круто изложено , продолжайте !
Интересно и доступно объяснено. Спасибо!
супер, не надо видео ускорять, умеете повествовать, спасибо за контент
Очень грамотно и правдиво, я аж прослезился.
Спасибо, Саша! Толковое видео.
Очень круто ) спасибо тебе большое.
Лучшее видео про алгоритмы, которое я видел.
Воууу, только наткнулся на твой канал, ты потрясающий лектор, спасибо огромное ))
1) полезная и структурированная информация
2) шикарный голос и грамотная речь (за отдельный плюс)
3) ролик не превышает время концентрации
В общем интересно, приятно и образовательно
Спасибо огромное за твои труды
Так, с алгоритмами понятно, а что такое структуры😄☺️ Очень доходчиво, лучшее введение в дисциплину, бакалаврам нужно такое включать! Спасибо, за дельное видео! Подписка
Очень здорово! Спасибо!
Спасибо за объяснение)👍
Хорошо,когда быстро и чётко. Респект
Лайк за обстоятельный подход и короткие очень ясные примеры.
Классное видео. Познавательно. Пошел учить алгоритмы. Хороший текст и поставленный голос с паузами где надо.
Какая приятная и чистая речь. Слушал и наслаждался.
Автору спасибо за видео. Информация и в правду нужная и достаточно хорошо разложенная, но есть не большой момент...
Дело в том, что я, например, чаще всего не советую начинающим разработчикам капаться в алгоритмах и структурах данных, предлагая в качестве альтернативы более прикладные вещи. Причина моих поступков заключается в том, что глубокое изучение алгоритмов и структур данных - это слишком большой объем информации, которые без практического использования плохо воспринимаются людьми, а в добавок человек получит два минуса:
1. Он всё еще не может написать программу, которая будет иметь практическую пользу, как следствие человек теряет мотивацию
2. Человек все равно не сможет иметь представления, как эти знания использовать, к тому же, часть вещей он забудет.
Не правильным тезисом для человека будет то, что есть некоторый "лимит" знаний, по достижению которого, процесс обучения будет завершен, поэтому "нужно ли учить алгоритмы" - вопрос не корректный с точки зрения формулировки вопроса. Правильным вариантом будет:
"Когда необходимо начать изучение алгоритмов". И именно на этот вопрос многие отвечают не правильно или вовсе не отвечают
всё-же минимальный набор алгоритмов и структур данных должен быть изучен с самого начала. Массив, список и дерево, хеш-таблица. Сортировки: пузырьком, вставкой, бинарным деревом. Хорошо, если ещё что-то с графом (тот-же поиск кратчайшего пути). Т.к. они задают минимум представлений.
И соответственно вопрос будет звучать - когда стоит углубятся в изучение алгоритмов и структур данных?
И тут ответов думаю только 2:
• когда возникнет необходимость (проект потребует);
• когда возникнет желание поработать над собой (отточить/развить навыки мышления, написания и анализа кода).
@@valeriytereshchenko6198 так вот прикол в том, что половину этих вещей начинающий разраб изучит параллельно. Буквально взять какой нить допотопный jquery. При манипуляции с dom человек сможет на базовом уровне освоить теорию графов. Это ведь не рокет сайнс.
@@UnrealSPh в случае "узнавания о дереве через тот-же jquery" - кто вам будет говорить об оценках алгоритмов (по количеству операций и памяти и соответствующим взаимосвязям со структурами данных)?
теория - она в том и полезна, что она абстрактна. Т.е. отбрасывает всё кроме значимых граней/деталей.
странно программистом называть субъекта, который легко работает с селекторами и способен добавить пару плагинов к вёрстке, но не сможет написать и пояснить работу пузырька. Это скорее продвинутый верстальщик, нежели программист.
шикарно, спасибо большое
Классно сделал, спасибо )
Класс! И спасибо за новый термин "Акцентрация внимания". Емко и сильно)))
Благодарю очень интересно и доступна для зеленого человечка в программировании
Круто, делай больше видео)
Незабывай еще про науку
помимо бизнеса
Там тоже ждут решений и изобретений)
Слушала на 1.5
Спасибо еще за таймкоды)
Прям как Хирьянов)
Оооооотличный видос-маршрутизатор
Огромное спасибо автору:)
Он просветил мне дорогу
Спасибо за мотивацию!
Отличный материал!
Замечательный ролик! Подписалась и буду ждать новых видео.
nice balance between depth and width of information)
Александр, куда же вы пропали? Офигительный контент)
Просто и понятно. Похоже я знаю чем займусь следующие месяцы.
Очень интересно, спасибо!
обычно ускоряю , а тут замедляю..:)
Спасибо, раскрыл кое что новое для себя.
Молодца, хорошо все рассказал, теперь хоть знаю куда двигаться
Вау! Крутое видео получилось! Вы меня убедили: алгоритмы реально нужная и важная вещь 👍
отличный ролик! спасибо
так круто объяснил, высший пилотаж, ато на лекции по алгоритмам я ничего не понимала, что зачем, просто тупо гуглила, а сейчас прям интересно стало внедрить для решения своих повседневных дел. Зато теперь точно сдам предмет как надо. Большая благодарность за видос.
хорошое видео! Вы очень хорошо объясняете!
Класс! Спасибо!
Узнал больше об алгоритмах из этого ролика чем за все увиденные бесплатные курсы и книги в инете =_= ппц как так.
Давай отдельно за каждый метод алгоритма подробно на примере с кодом.
Дружище, в институт на программиста поступить не пробовал? Хотя бы на заочку. Ну какие могут быть курсы??? Чему они вас там научат за пару месяцев, йомайо? Наивные вы как дюймовочки, честное слово.
Класс, тема очень интересная. Спасибо! А можно что-нибудь про структуры данных? ))
красава братан! мотивируешь!
Очень крутые видео на канале. Спасибо!
Спасибо за видео.
Алгоритм-это системный подход к решению задач и системы бывают разные.Очень понравилось видео.Спасибо.( код-это как предложение какую букву каким знаком обозначить ,или/ и какое слово как обозначить ,чтобы составить порядок действий для решения задачи.То есть программа действий ( = приложение) как построить дом из отобранных материалов- кодов для конкретной цели.) В общем,спасибо,даже если не совсем правильно поняла.
Зашел на ваш канал, отвечая на вопрос в коментах ютуба: зачем нужно учить "алгоритмы и структуры данных".
Сразу же подписался, отлично излагаете. Пожалуйста, продолжайте развивать канал, у вас отлично получается.
Крутое видео, запишите еще:)
Прекрасное видео, спасибо!
Спасибо! Очень интересно объяснил. Я, признаться, изменил мнение на эту тему.
Четко и по делу. Лайк
Спасибо за видос. А можно ещё?)
какой же ты молодец!
Отличный видос!
Александр, снимаю колокол за максимально быстрое пояснение необходимости алгоритмов.
Спасибо большое, очень полезно
Video is made in a cool way. Respect!
в полном восторге :) как от содержания, так и от подачи :)) а где вы речь ставили и продавать учились?
Мощный видос. Подпишусь и буду ждать еще)
Спасибо! Жаль, что больше нет видео.
Хороший урок автор!