#3. Алгоритм Дейкстры (Dijkstra’s algorithm) | Алгоритмы на Python

  Рет қаралды 58,101

selfedu

selfedu

Күн бұрын

Рассматривается работа алгоритма Дейкстры поиска оптимальных маршрутов в связном изолированном графе. Приведен пример его реализации на языке Python.
algorithm-dikstry.py: github.com/sel...

Пікірлер: 69
@Dimkecola
@Dimkecola Жыл бұрын
Дай бог тебе здоровья и денег кучу! Чтобы я делал без тебя! Спасибо Вам огромное за труд.
@СарматПересветов
@СарматПересветов 28 күн бұрын
Спасибо. В идеале конечно алгоритм должен искать не только расстояние но и кратчайший путь
@tamarazarizina4628
@tamarazarizina4628 Жыл бұрын
Вы идеальный преподаватель, желаю Вам всего самого лучшего)
@AspiringToTheBest
@AspiringToTheBest Жыл бұрын
Один из немногих нормальных ютуберов, который делает все в одном месте, понятно и качественно. А главное старается помочь аудитории и экономит время, за что отдельный респект! Не останавливайся!) (p.s. летом тоже хочу канал начать вести, может посоветует кто что по тематике?))
@AspiringToTheBest
@AspiringToTheBest Жыл бұрын
лол а почему в репе отличается код для дейкстры? 😅
@selfedu_rus
@selfedu_rus Жыл бұрын
@@AspiringToTheBest возможно, что-то правил потом, не помню уже. А по тематике канала, лучше брать то, что нравится и в чем разбираетесь, иначе будет тяжко )) Успехов!
@TonyStark-b3r
@TonyStark-b3r 8 ай бұрын
Спасибо за урок.Вы делаете великое дело,жаль вы не мой учитель по информатике.Дай бог вам здровья и успехов
@electron4ik123
@electron4ik123 2 жыл бұрын
Прохожу Ваш курс по ООП, узнал о лекциях по алгоритмам. Спасибо большое за проделанную работу.
@2000diker
@2000diker 2 жыл бұрын
Спасибо!!! В коде, при выборе v не 0, функция arg_min может возвращать значение 0, а значит условие "if v > 0:" не выполнится. При условии "if v >= 0" все работает чётко! Ещё раз спасибо большое за объяснения!!
@СергейД-х7щ
@СергейД-х7щ 5 ай бұрын
Провозившись несколько дней с испытаним "Бремя наследия" могу сказать "спасибо". Спасибо за то что по этому видео его выполнить невозможно. За то, что здесь отсутствует часть алгоритма по поиску собственно, маршрута (и понимание, что описание неполное и надо искать дальше приходит далеко не сразу). За то, что, как оказалось, программа на Git отличается от описания тут. И спасибо за то, что описания направленных и ненаправленных графов тут нет (а в тестах-то они есть). Просто великолепно...
@Quimorax
@Quimorax 3 жыл бұрын
Похоже что новый плейлист "Алгоритмы" не за горами)
@sergeyv1534
@sergeyv1534 3 жыл бұрын
Вот эти алгоритмы, крайне желательно: Линейная регрессия. Логистическая регрессия. Деревья решений. Метод опорных векторов. Метод k-ближайших соседей. Алгоритм случайный лес. Метод k-средних. Метод главных компонент.
@ressurextion3690
@ressurextion3690 Жыл бұрын
Прохожу ваш курс по ООП! Спасибо вам!
@vladpronin5033
@vladpronin5033 3 жыл бұрын
Спасибо! За такое изложение алгоритмов нельзя скипать рекламу)
@МихаилЛебедев-п2и
@МихаилЛебедев-п2и Жыл бұрын
Большое спасибо за проделанную работу!
@МихаилХолостов-р1п
@МихаилХолостов-р1п 2 жыл бұрын
Спасибо! Сейчас буду до конца разбираться в реализации, но в целом все понятно объяснили.
@vladimirfolomeev5697
@vladimirfolomeev5697 3 жыл бұрын
Спасибо за Ваши старания! Не останавливайтесь, пожалуйста, Ваш канал по справедливости оценит аудитория и у Вас ещё будут миллионы просмотров.
@friend1cat
@friend1cat 3 жыл бұрын
Спасибо, Сергей!
@nikitazinchenko2561
@nikitazinchenko2561 3 жыл бұрын
Спасибо, очень полезная информация !!!
@elenatalley7899
@elenatalley7899 2 жыл бұрын
Спасибо! лучшее объяснение!
@vitalicpodmarkov2336
@vitalicpodmarkov2336 10 ай бұрын
Спасибо, очень просто и понятно))
@Ruslan501
@Ruslan501 Жыл бұрын
Ох, чел. Спасибо тебе!!!
@petersburgpietroburg
@petersburgpietroburg 3 жыл бұрын
Спасибо большое! Всё понятно стало.
@man05ru
@man05ru 2 жыл бұрын
Один момент не совсем понятно. Объясните Сергей как после построения этой таблицы строить мин-й маршрут ?
@romanbykov5922
@romanbykov5922 2 жыл бұрын
Спасибо!
@gbo4net
@gbo4net Жыл бұрын
Я тоже в начале не понял что это за вес такой что за цифры и откуда они взялись ))))) Надеюсь вы не убежали сразу же как только поняли что ничего уже в начале не понимаете ))) Я смотрел 3 раза что бы сообразить что за вес дуг ))))) Для тез кто на первых минутах не понял что это за цифры ВЕС ДУГ. Имеется в виду некий промежуток времени или некое расстояние между точками. Допустим из этого графа (маршрута) от точки 1 до точки 2 расстояние 3 км или 3 часа. А от точки 1 до точки 4 расстояние 3км или 3 часа. Почему часы или километры ? Не важно, важно, что время затраченное или расстояние, от некой точки до некой точки составляет некую величину. И исходя из этих величин рассчитывается расстояние на которое вы потратите меньше времени или пробежите меньше километров.
@sanyarud5676
@sanyarud5676 3 жыл бұрын
Ппц я это знаю. Но не так подробно. Спасипка большое
@dedhood2183
@dedhood2183 2 жыл бұрын
ТОП!!!
@магомедтохчуков-ы3б
@магомедтохчуков-ы3б 11 ай бұрын
спасибо!
@blanket8422
@blanket8422 2 жыл бұрын
Можно вариант кода, где переменные записаны словами, а не буквами. Пожалуйста, сложно код разбирать
@tip_2469
@tip_2469 2 жыл бұрын
Можешь написать как в этой программе получить кратчайший путь до той же точки 5 или 2? номер целевой точки в идеале поместить в переменную. Тут суммируется длина к ним но как сам путь получить?
@tip_2469
@tip_2469 2 жыл бұрын
Попробовав утром и смог разобраться в этом питон коде и понять сам чёткий алгоритм действий
@artyr4an271
@artyr4an271 Жыл бұрын
привет, смог разобраться? @@tip_2469
@artyr4an271
@artyr4an271 Жыл бұрын
подскажи как ты сделал цель например до 5, а еще если смог начальную вершину запихнуть в переменную, например путь от 3 до 5, то буду благодарен)@@tip_2469
@tip_2469
@tip_2469 Жыл бұрын
@@artyr4an271 Я уже и не помню как переделывал этот скрипт. Сейчас это часть большой системы навигации AI в открытом мире с обходом опасных мест написанная на с++. kzbin.info/www/bejne/kIizmYufn9KjjZo
@playerhs7572
@playerhs7572 6 ай бұрын
Нифига не понял, но очень интересно!
@IM-gp9yj
@IM-gp9yj 3 жыл бұрын
Здравствуйте, это же только для двунаправленных графов? Будет видео для однонаправленных графов?
@selfedu_rus
@selfedu_rus 3 жыл бұрын
Пока нет, но вы можете и сами его модифицировать для однонаправленных
@ВикторЖигурда
@ВикторЖигурда 3 жыл бұрын
👍
@a_z_i_m240
@a_z_i_m240 Жыл бұрын
привет с тобой можно как-то связаться? у меня матрица 18на18 не работает
@alexanderivanov899
@alexanderivanov899 Жыл бұрын
А как алгоритм знает между какими вершинами есть связь, а какими нету?
@DenisTrebushnikov
@DenisTrebushnikov Жыл бұрын
таблица смежности D. Вбита вручную на строках 20-25, в ней 0 - отсутствие связи, всё, что больше 0 - означает связь есть, а само значение - вес этой связи.
@user709__aaa
@user709__aaa Жыл бұрын
подскажите пожалуйста, какая асимптотика у данного алгоритма? за сколько работает?
@selfedu_rus
@selfedu_rus Жыл бұрын
если не ошибаюсь O(n^2)
@smartman-ef7wh
@smartman-ef7wh 2 жыл бұрын
А саму матрицу смежности программист вручную, на бумажке чертит и вносит ее в программу и будет играться с ней?
@selfedu_rus
@selfedu_rus 2 жыл бұрын
да, сам )
@MrIgor989
@MrIgor989 3 жыл бұрын
порекомендуите книги по алгоритмам
@selfedu_rus
@selfedu_rus 3 жыл бұрын
Классика - это Вирт Н. Алгоритмы и структуры данных
@MrIgor989
@MrIgor989 3 жыл бұрын
@@selfedu_rus Спасибо
@КириллНечаев-ц5р
@КириллНечаев-ц5р 3 жыл бұрын
@@selfedu_rus допустим, я хочу начать с третьей вершины, значит стартовый элемент я должен поменять на 2. (v=2.) Но алгоритм зацикливаться тогда. Подскажи, пожалуйста, как исправить?
@tanteria6959
@tanteria6959 2 жыл бұрын
@@КириллНечаев-ц5р жиза. Тоже никак не могу найти ошибку
@freaxlover
@freaxlover Жыл бұрын
Спасибо, бро
@staylonely9743
@staylonely9743 Жыл бұрын
ужасное название переменных))
@lil_landau
@lil_landau 10 ай бұрын
Зачем тебе нормальный нейминг, если это маленькая и локальная программа, которая не выйдет за пределы этого ролика...
@LizavetaSakalova
@LizavetaSakalova 6 ай бұрын
По этому комменту можно понять, что кто-то не решает алгоритмические задачи)
@ИванЕвдокимов-л6ь
@ИванЕвдокимов-л6ь 7 ай бұрын
Здравствуйте. К сожалению ваш код не рабочий - программа зависает при таких данных: Matrix: 0 4 4 2 4 4 0 10 1 7 4 10 0 9 1 2 1 9 0 4 4 7 1 4 0 start: 1, end: 2 На строчке: end = M[P[-1]]. M[P[-1]] возвращает ноль и так по кругу в бесконечном цикле
@selfedu_rus
@selfedu_rus 7 ай бұрын
Бывает и такое )
@ахуец
@ахуец 3 жыл бұрын
Повезло повезло
@kosk4306
@kosk4306 7 ай бұрын
пиздец какой-то... нет, я, конечно, всё понимаю, но этого я не понимаю...
@mixa_football_ru
@mixa_football_ru 4 ай бұрын
Спасибо!!!
@devops8058
@devops8058 3 жыл бұрын
Я рад что попал на этот канал а то по разным местам собирал инфу
@nicolasray6257
@nicolasray6257 Жыл бұрын
меня убивают эти названия переменных
@дашука-ч9т
@дашука-ч9т Жыл бұрын
Спасибо огромное, очень помог💖
@strawberrylynx6259
@strawberrylynx6259 2 жыл бұрын
спасибо за старания!!!
@EgrNegr-chugun
@EgrNegr-chugun Жыл бұрын
не понял код,видимо я еще слишком чайник(
@vladimireliseev7602
@vladimireliseev7602 3 жыл бұрын
Извиняюсь, а где ссылочка на показанную в видео реализацию алгоритма на github?
@selfedu_rus
@selfedu_rus 3 жыл бұрын
github.com/selfedu-rus/python-algorithms (файл algorithm-dikstry.py)
@vladimireliseev7602
@vladimireliseev7602 3 жыл бұрын
Благодарю!
Алгоритм Дейкстры
10:35
Kirsanov2011
Рет қаралды 150 М.
Brawl Stars Edit😈📕
00:15
Kan Andrey
Рет қаралды 54 МЛН
The Joker wanted to stand at the front, but unexpectedly was beaten up by Officer Rabbit
00:12
🍉😋 #shorts
00:24
Денис Кукояка
Рет қаралды 3,3 МЛН
Рекурсия. Репка и матрёшка
18:37
Тимофей Хирьянов
Рет қаралды 118 М.
Лекция "Графы и Python"
35:37
Математический факультет ЯрГУ
Рет қаралды 6 М.
Алтынбаев Артур python разработчик собеседование
52:07
Brawl Stars Edit😈📕
00:15
Kan Andrey
Рет қаралды 54 МЛН