Алгоритм Дейкстры

  Рет қаралды 151,697

Kirsanov2011

Kirsanov2011

Күн бұрын

Пікірлер: 149
@Денис-р5в4з
@Денис-р5в4з 2 жыл бұрын
Большое спасибо. Это лучшее объяснение данного алгоритма, из тех что я встретил на просторах. Понятно и наглядно👍👍
@senya5668
@senya5668 5 жыл бұрын
Пасибо , что спасаете ленивых студентов..
@annavasileva5688
@annavasileva5688 2 жыл бұрын
Объяснение с прямой линией вижу в первый раз, и это очень удобно. Спасибо большое!
@osenyaaPechen
@osenyaaPechen 11 жыл бұрын
Вы сэкономили мне кучу времени. Спасибо!
@yehorpanchenko10
@yehorpanchenko10 8 жыл бұрын
Посмотрел куча других видео - ничего не понял. Посмотрел ваше - все понял с самого начала. Спасибо за доступное объяснение.
@iluhanse745
@iluhanse745 11 ай бұрын
Спасибо Вам огромное! Наконец-то окончательно разобрался с этим алгоритмом.
@КристинаМищенко-з1м
@КристинаМищенко-з1м 11 ай бұрын
Огромное спасибо! Вы помогли мне понять этот алгоритм!
@leonidsah
@leonidsah 4 жыл бұрын
Вы просто лучший
@raikhantemirova8951
@raikhantemirova8951 5 жыл бұрын
Благодаря вам , получил 90 баллов по дискретной математике. Спасибо!!!
@RomanOleynik92
@RomanOleynik92 8 жыл бұрын
Благодарю вас за информационный, легко усвоиемый видео урок.
@vrakitine
@vrakitine 6 ай бұрын
В институте я много слышал про конечные автоматы (КА), но это всё было теорией - как облака в небе: воды в них много, а напиться нельзя. Корпел три месяца после института, пока не реализовал свой КА в коде в 1981 году. Сейчас существует методология программирования на этой основе - v-agent oriented programming (VAOP) - и множество примеров её реализации. Лучше начать знакомство с VAOP с этой статьи на Medium: "Bagels and Muffins of Programming or How Easy It Is to Convert a Bagel into a Black Hole" или на Хабре: "Бублики и Коржики Программирования".
@НиколайХодарев-ь8н
@НиколайХодарев-ь8н 3 жыл бұрын
Спасибо огромное, уже столько времени прошло, а акутально и по сей день:)
@andrushabt
@andrushabt 3 жыл бұрын
спасибобольшое вам за очень простое обьяснение. здоровья и процветания вам
@s4ygak
@s4ygak 3 жыл бұрын
Пересмотрел несколько раз, поставил лайк, алгоритм запомнил, идеально
@Faustism
@Faustism 10 жыл бұрын
Отлично! Очень доходчиво. Спасибо!
@dailyInfo24
@dailyInfo24 Жыл бұрын
спасибо, тятя, вы очинь умнний. Я сам узбек делал поступило ни унивирсэтет. очинь сложна(((. вы памоч спосибо
@lif0CLUB
@lif0CLUB 8 жыл бұрын
Большое спасибо,вам за ваши труды
@MySaluto
@MySaluto 11 жыл бұрын
Хочу заметить, что алгоритм физически напоминает поведение воды когда она накапливается на неровном ландшафте, первым делом заливает пустоты, затем если вокруг высокие препятствия - ищет следующий кратчайший путь повышая уровень воды. Повышение уровня воды - это аналог "удорожания маршрута".
@arthuralunts5424
@arthuralunts5424 2 жыл бұрын
Спасибо, док.
@ДимаРекун-ю8т
@ДимаРекун-ю8т 9 жыл бұрын
благодаря видео я сдела свою контрольную работу по графам))) спасибо БОЛЬШОЕ
@Kirsanov2011
@Kirsanov2011 9 жыл бұрын
+Дима Рекун Ради этого я и трудился...
@MsTurugor
@MsTurugor 12 жыл бұрын
Благодарю) Долго не мог понять, теперь разобрался)
@Enthe0genic
@Enthe0genic 7 жыл бұрын
Спасибо большое! Очень доходчиво объясняете.
@IvanGavr
@IvanGavr Жыл бұрын
Спасибо. А если так?! Найти все пути из первой точки в последнюю; затем для каждого найденного пути найти расстояние; сохранить все в массиве, отсортировать массив расстояний по возрастанию, то первое значение и будет кратчайшим путём. Это уже будет далеко от алгоритма Дейкстры?!
@Kirsanov2011
@Kirsanov2011 Жыл бұрын
Вот в том то и дело - как найти ВСЕ пути? Перебором? Думайте. Вопрос не закрыт. Алг Дейкстры - это одно из решений
@IvanGavr
@IvanGavr Жыл бұрын
@@Kirsanov2011вот такой у меня получился способ, (без кода) на основе упорядоченной матрицы: kzbin.info/www/bejne/fHPOZql6mdqmpbs
@valermann
@valermann 6 жыл бұрын
Отличное представление!
@fogrinn7525
@fogrinn7525 4 жыл бұрын
Спасибо большое вам за обьяснение!
@Kirsanov2011
@Kirsanov2011 12 жыл бұрын
просмотрите еще раз и почитайте книги... Успехов!
@КатяБабчинская-ю5ш
@КатяБабчинская-ю5ш 10 жыл бұрын
Спасибо за урок..Всё ясно и понятно!!)нет ничего лишнего - всё по теме!!
@archwarden7004
@archwarden7004 4 жыл бұрын
Очень интересно и доходчиво, спасибо!
@АртёмЧацкий-э9в
@АртёмЧацкий-э9в 10 жыл бұрын
Большое спасибо за доступное объяснение
@Мурчащиекотятки
@Мурчащиекотятки 8 жыл бұрын
Спасибо, всех благ вам за ваши труды :)
@KartDev
@KartDev 4 ай бұрын
Пока что самое понятное объяснение, которое я встречал в инете
@Guveba
@Guveba 12 жыл бұрын
Хорошо, нашли мы кратчайшее расстояние, а как узнать через какие точки? Из полученной таблицы я наглядно этого не увидел.
@ustesrendel
@ustesrendel Ай бұрын
А для чего добавлять значение предыдущей метки?
@haruhiismygoddess2727
@haruhiismygoddess2727 12 жыл бұрын
Никак не мог разобраться, как работает протокол динамической маршрутизации OSPF, он как раз основан на методе Дейкстры. Посмотрел видео, разобрался. Спасибо)
@Kirsanov2011
@Kirsanov2011 11 жыл бұрын
Для поиска последовательности узлов алгоритм надо еще немного доработать. Но не принципиально, просто на каждом этапе запоминать, из чего складывается минимальная сумма, а потом стирать ее, если найдется еще меньше (а в ней тоже уже хранится последовательность...). На любом алгоритм.языке это не трудно сделать. Я это делал в Maple (см. мою книгу "Графы в Maple", она есть в сети)
@ya_gema
@ya_gema 6 жыл бұрын
Спасибо Вам большое, очень доступно и понятно объяснили.
@ellviira
@ellviira 9 жыл бұрын
Большое спасибо,все понятно и доступно
@АртёмТютюнник-ы7р
@АртёмТютюнник-ы7р 11 жыл бұрын
Отлично! Разобрался с алгоритмом Дейсктры! Нет ли у Вас такого же доступного урока по алгоритмам Форда и Флойда? Не могу разобраться. Заранее благодарен!!!
@kattyrein9900
@kattyrein9900 9 жыл бұрын
Отличное видео, все очень понятно! Единственный вопрос, как вычислять сам путь (порядок вершин), а не только длину пути?
@Kirsanov2011
@Kirsanov2011 9 жыл бұрын
+Katty Rein Пишите каждый раз список предшествующих вершин
@micebirds
@micebirds 5 жыл бұрын
Спасибо большое, всё очень понятно!
@ЮлияКравцова-о6ф
@ЮлияКравцова-о6ф 6 жыл бұрын
Отличное объяснение) Спасибо!!
@JeckPot111
@JeckPot111 8 жыл бұрын
Мужик, спасиб большое
@Pancelet
@Pancelet 4 жыл бұрын
Мэи с заставкой в начале звучит грандиозно
@flukalpes
@flukalpes 8 жыл бұрын
А как найти сам путь, а не только его длину?
@hskdjs
@hskdjs 8 жыл бұрын
Как вариант - при обновлении метки сохранять информацию о вершине-предшественнике.
@Gidrionix
@Gidrionix 10 жыл бұрын
Спасибо огромное!!!!!!!!!!!!!!
@СергейБренько-ы3л
@СергейБренько-ы3л 10 жыл бұрын
Спасибо автору
@FixedA
@FixedA 9 жыл бұрын
не могли бы пожалуйста, про D* еще рассказать
@SahkaP
@SahkaP 12 жыл бұрын
С этой таблицей я запутался еще сильнее
@Suuuuuuhovich
@Suuuuuuhovich 11 жыл бұрын
Могли бы вы рассказать о методе Беллмана-Мура? Для отрицательных весов
@antontelyaev4927
@antontelyaev4927 8 жыл бұрын
супер!
@rusg777
@rusg777 12 жыл бұрын
Спасибо большое!
@mcd-ti2wv
@mcd-ti2wv 3 жыл бұрын
Самое понятное разъяснение
@vladimirduchenchuk8518
@vladimirduchenchuk8518 12 жыл бұрын
Огромное спасибо! Ни как не мог найти ошибку в своей реализации алгоритма=)
@Kirsanov2011
@Kirsanov2011 11 жыл бұрын
Зачем блок-схема? Могу и саму программу на простом и понятном языке Maple. См. стр. 111 моей книги "Графы в Maple" (книга есть в сети, но уже нет в продаже). Но там задействованы и спец.команды Maple, хотя их назначение довольно ясно...
@blk8722
@blk8722 11 жыл бұрын
Всё отлично понятно, спасибо за видео)
@gudapavella1751
@gudapavella1751 3 жыл бұрын
Теперь я понимаю, почему в универе частенько ничего не понимал, этож надо, на 75% видео сказать, я ошибся в самом начале, давайте я за 2 секунды все переделаю.
@jmnext1338
@jmnext1338 7 жыл бұрын
Здравствуйте. А алгоритм флойда уошера у вас нет? Я ваши видео глянул но ничего такого не встретил. Заранее спасибо
@AntonioNeStradivary
@AntonioNeStradivary 11 жыл бұрын
Я извиняюсь, просто посмотрел описание на Вики, и уж очень странным оно мне показалось. Под впечатлением, отправил сообщение не по адресу. Прошу извинить. Я только одного момента не понял, алгоритм Дейкстры находит именно ВЕЛИЧИНУ пути, в вашем примере, это 5, либо он может найти сам путь, т.е. перечень всех узлов по порядку которые нужно посетить?
@Денис-з7ч
@Денис-з7ч 5 жыл бұрын
Вопрос такой. Если в одном ряду получилось два одинаковых числа и они оба наименьшие, то что делать?
@Kirsanov2011
@Kirsanov2011 5 жыл бұрын
Решение бывает не единственным. Поэтому берите любую. Потом для интереса возьмите другую.
@batista12001
@batista12001 11 жыл бұрын
Назначь длиной каждого ребра единицу, тогда этот алгоритм выведет тебе наименьшее кол-во рёбер от начальной до конечной вершины, а это и есть маршрут.
@AngelVlad100
@AngelVlad100 10 жыл бұрын
А что делать если в ряду 2 одинаковые вершины?Решать относительно каждой?
@Kirsanov2011
@Kirsanov2011 10 жыл бұрын
Выбирать любую из них.
@Kirsanov2011
@Kirsanov2011 11 жыл бұрын
См, например, мою книгу "Графы в Maple"
@ЛюссанаБазарова
@ЛюссанаБазарова 4 жыл бұрын
Здравствуйте,этот алгоритм с первого раза приведет к кратчайшему пути? Просто я для интереса выбрала не самый короткий путь на некоторых шагах а в итоге прошла более коротким путем чем если бы я действовала по алгоритму
@Kirsanov2011
@Kirsanov2011 4 жыл бұрын
Не может этого быть! Ошиблись.
@ЛюссанаБазарова
@ЛюссанаБазарова 4 жыл бұрын
@@Kirsanov2011 да,ошибка была в сносе,а где обзор на алгоритм Форда-Беллмана?
@BbeeTV
@BbeeTV 11 жыл бұрын
Могли бы вы нарисовать блок схему к вашему решению и к алгоритму в целом?? Очень нужно! Заранее спасибо!
@Kirsanov2011
@Kirsanov2011 11 жыл бұрын
Будет и Форд-Флойд. А Форд-Фалкерсон уже есть. Ищите.
@treugolinik
@treugolinik 11 жыл бұрын
Спасибо!!!
@GAVVVR
@GAVVVR 11 жыл бұрын
Спасибо большое, все понятно)
@sobolmx
@sobolmx 11 жыл бұрын
superb! spassibo!
@Kirsanov2011
@Kirsanov2011 11 жыл бұрын
Ничего не изменится, хоть 1000000! Можете еще алгоритмом Флойда воспользоваться, это еще проще, а потом свериться с Дейкстрой, все совпадет. Все эти алгоритмы доказываются, это только я так по-простому все рассказал... См. книги.
@BbeeTV
@BbeeTV 11 жыл бұрын
просто мне именно блок-схема нужна для курсовой работы все объяснение ваше понял, а вот как нарисовать блок-схему не понимаю(
@trampller
@trampller 11 жыл бұрын
Спасибо.
@Маринаиванова-ф9ь
@Маринаиванова-ф9ь 9 жыл бұрын
Находим минимальный путь, а если нужен максимальный путь выбираем на каждом шаге максимум? Спасибо
@Kirsanov2011
@Kirsanov2011 9 жыл бұрын
+Марина иванова Минимум функции f(x) совпадает с максимумом A-f(x) - просто перевернуть график
@Ilichi
@Ilichi 8 жыл бұрын
Можете подробней описать, как найти максимальний путь?
@Kirsanov2011
@Kirsanov2011 8 жыл бұрын
1. Берете какое-нибудь большое число А, большее, чем вес любой дуги графа. 2. Все веса f_k графа заменяете на A-f_k 3. В полученном графе находите минимальный путь. Для исходного графа он будет максимальным.
@Ilichi
@Ilichi 8 жыл бұрын
Благодарю за ответ!
@dm.vortex4171
@dm.vortex4171 9 жыл бұрын
я не понял как он с вершины 3 в вершину 2 попал ?
@МишаОвчинников-ц8й
@МишаОвчинников-ц8й 9 жыл бұрын
+Дмитрий Вихарев , снес "2" с предыдущей строки так как она весит (мы её не прошли), и сравнил - минимальное в получившейся строчке
@kyzmitch2
@kyzmitch2 2 жыл бұрын
у нас в универе никогда не говорили "снести"
@Andrea13339
@Andrea13339 11 жыл бұрын
Надо внимательнее, видио-гид очень подробно расписан: шаг за шагом. Спасибо за алгоритм!
@Suuuuuuhovich
@Suuuuuuhovich 11 жыл бұрын
Как найти максимальный путь
@aivashyna
@aivashyna 10 жыл бұрын
выбирай найбольшее значение в каждой строке.
@ablgmv
@ablgmv 8 жыл бұрын
спасибо!
@ВалентинТятьков
@ВалентинТятьков 10 жыл бұрын
Спасибо, все понятно. Но у нам в университете используют алгоритм из 6-ти ходов... То еще занятие, но результат тот же значит?
@БабкаБомБом
@БабкаБомБом 7 жыл бұрын
Спасибо)
@alexandristomin2410
@alexandristomin2410 8 жыл бұрын
Спасибо за видео, всё понятно, но у меня вопрос, что делать если в конце 2 повторяется постоянная вершина 4 ?
@Kirsanov2011
@Kirsanov2011 8 жыл бұрын
Не совсем ясен вопрос. Постоянная вершина только один раз появляется. Потом ход на нее запрещен.
@alexandristomin2410
@alexandristomin2410 8 жыл бұрын
у меня повторяется наименьшее число
@Kirsanov2011
@Kirsanov2011 8 жыл бұрын
Если два одинаковых наименьших числа - берите любое.
@alexandristomin2410
@alexandristomin2410 8 жыл бұрын
Kirsanov2011 ясно, спасибо вам
@fenrrisulfr
@fenrrisulfr Жыл бұрын
@@Kirsanov2011 а что делать, если я пришла к определенной вершине (до конечной еще не дошла), но из нее ходы только в постоянные вершины, т.е. тупик?
@ЮлияЛапина-ц4л
@ЮлияЛапина-ц4л 4 жыл бұрын
спасибо огромное, у меня завтра экзамен по теории алгоритмов, надеюсь сдам)
@Kirsanov2011
@Kirsanov2011 4 жыл бұрын
Есть еще А*
@gitarnoob
@gitarnoob 11 жыл бұрын
Ясно, алгоритм находит кратчайшее расстояние от одной вершины к остальным, а как быть если мне надо узнать не численное расстояние до остальных вершин, а маршрут (то есть список вершин чтобы в сумме удовлетворяли расстоянию) ?
@bond94g
@bond94g 6 жыл бұрын
Жалко, лектор этого не рассказал. Там нужно завести ещё один столбец, в котором указывать номер вершины, получившей постоянную пометку на данном шаге. С помощью этого столбца легко восстанавливается кратчайший путь до любой вершины. Также можно построить т.н. дерево кратчайших путей.
@traxternberg
@traxternberg 6 жыл бұрын
Представленный алгоритм неполный, путь по вершинам, образующим минимальное расстояние не фиксируется. И вообще, объяснение не Дейкстры, родной алгоритм предусматривает обход по всем соседним вершинам, на которых еще не был. Далее Обход соседей от соседних вершин и т.д. ...
@Kirsanov2011
@Kirsanov2011 6 жыл бұрын
Спасибо!
@AntonioNeStradivary
@AntonioNeStradivary 11 жыл бұрын
В рамках моей задачи, для поиска маршрута я могу использовать следующий подход - удалять из графа все длинные пути к одной и той-же вершине, оставляя только короткие. При вычислении веса вершины, если новый вес больше текущего, это значит, что найден дополнительный и более длинный путь к этой вершине. Следовательно этот путь (ребро) я могу удалить из графа. Для моей задачи это не критично. Таким образом в конце получаю граф в котором все точки связаны только одним маршрутом. Думаю это сработает.
@ПетрАвен-к7ч
@ПетрАвен-к7ч 9 жыл бұрын
спасибо
@dizogdizog2591
@dizogdizog2591 8 жыл бұрын
Спасибо за ролик в любом случае. но мне кажется надо это понимать на языке символов и алгоритмов. так для общего частного понимания средних к коим и себя отношу умов
@MaximumDo
@MaximumDo 5 жыл бұрын
имеем 2 массива: дист[n] = [0]*n, tested[n] = [false]*n и матрица смежности am[n][n], где, если вершины не связаны, стоит inf пока минимальная длина < inf tested[minvert] = true для всех вершин графа если dist[minvert] + am[minvert][i] < dist[i] обновляем dist[i] ищем вершину с наименьшим дист[i] и tested[i] == false minvert = i mindist = dist[i]
@lerby5512
@lerby5512 10 жыл бұрын
Безусловно плюс за ваш труд, но, как мне кажется, не помешало бы сделать метку на видео когда начинается сам алгоритм :)
@ekklesiast
@ekklesiast 8 жыл бұрын
Не понимаю, в вики описание отличается.
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil 6 жыл бұрын
в вики графически представлено и псевдокодом там тоже хорошая подача материала
@john1987742
@john1987742 3 жыл бұрын
ничего не понял
@dudejustdude
@dudejustdude 12 жыл бұрын
Сделал лабу четверти группы, спасибо)
@AntonioNeStradivary
@AntonioNeStradivary 11 жыл бұрын
ок, буду дорабатывать. Спасибо.
@SahkaP
@SahkaP 12 жыл бұрын
Спасибо, но я просто пытался вспомнить алгоритм. Википедия расставила все на своим места
@BbeeTV
@BbeeTV 11 жыл бұрын
Или хотя бы понятный алгоритм написать, по которому можно будет нарисовать блок-схему
@АлександрБирич-щ2с
@АлександрБирич-щ2с 7 жыл бұрын
Ааа зачем алгоритм дейскры если крускала быстрее
@Kirsanov2011
@Kirsanov2011 7 жыл бұрын
Алгоритм построения минимального остова? Зачем? или у Крускала есть еще алгоритм, который я не знаю?
@АлександрБирич-щ2с
@АлександрБирич-щ2с 7 жыл бұрын
чтобы дойти до вершины 6
@АлександрБирич-щ2с
@АлександрБирич-щ2с 7 жыл бұрын
и кстати за сколько работает алгоритм дейкстры
@АлександрБирич-щ2с
@АлександрБирич-щ2с 7 жыл бұрын
за квадрат или линию на логарифм
@dmitrypetrov8491
@dmitrypetrov8491 7 жыл бұрын
1) Алгоритм Крускала используется для построения минимального остова, а не для поиска кратчайших путей в орграфах. 2) Чтобы говорить об асимптотике алгоритма Дейкстры, нужно определиться со структурами данных, которые Вы собираетесь использовать. В самой наивной реализации, если Вы будите хранить граф в виде матрицы смежности, то алгоритм будет работать за O(n^2), где n - число вершин графа. В самом деле, вам нужно будет сделать n шагов, на каждом из которых просматривать n вершин.
@ПррроРос
@ПррроРос 5 жыл бұрын
Вообще то это и так видно что кратчайшее расстояние 5 данный зачем формализм?
@juneority
@juneority 5 жыл бұрын
а если там тысячи вершин?
@Inseidful
@Inseidful 7 жыл бұрын
слабо что-то понял, почему 5 если минимальное расстояние 1-3-6?
@IvanShulga
@IvanShulga 7 жыл бұрын
5 - это минимальное расстояние (минимальная сумма длин ребер), а не номер вершины, т.е длина ребра (1)->(3) = 1; длина ребра (3) -> (6) = 4. итого минимальное расстояние (1)->(3)->(6) = 1+4 = 5
@DimaasisDas
@DimaasisDas 12 жыл бұрын
да это же элементарно! как можно запутаться?
@padla6304
@padla6304 3 ай бұрын
4.5 < 5
@vasyapupkin997
@vasyapupkin997 4 жыл бұрын
угарный чел
@mkdotam
@mkdotam 12 жыл бұрын
Если владеете английском посмотрите вот сюда, /watch?v=xT5o1QCeWS8 - очень все четко объяснено.
Алгоритм Дейкстры
26:28
Volodya Mozhenkov
Рет қаралды 63 М.
Муравьиный алгоритм
37:01
Kirsanov2011
Рет қаралды 45 М.
#behindthescenes @CrissaJackson
0:11
Happy Kelli
Рет қаралды 27 МЛН
БОЙКАЛАР| bayGUYS | 27 шығарылым
28:49
bayGUYS
Рет қаралды 1,1 МЛН
Минимальный остов
15:53
Kirsanov2011
Рет қаралды 43 М.
Кратчайший путь в графе. Алгоритм Дейкстры
27:20
Учиться - значит делать!
Рет қаралды 16 М.
АЛГОРИТМ БЕЛЛМАНА-ФОРДА
18:50
Шамаth
Рет қаралды 275
Learn to see the world like this, and you will find happiness and peace.
9:25
Библиотека душеполезных поучений
Рет қаралды 63 М.
Графы
15:01
Мариана Николаева
Рет қаралды 99 М.
Насыщение сети
17:17
Kirsanov2011
Рет қаралды 59 М.
Kruskal's algorithm
6:30
Roman Tsarev
Рет қаралды 49 М.
Генетический алгоритм
9:58
Kirsanov2011
Рет қаралды 37 М.
Минимальное остовное дерево. Алгоритм Прима
16:13
Учиться - значит делать!
Рет қаралды 14 М.
#behindthescenes @CrissaJackson
0:11
Happy Kelli
Рет қаралды 27 МЛН