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

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025

Комментарии • 70

  • @vladimirfolomeev5697
    @vladimirfolomeev5697 3 года назад +59

    Спасибо за Ваши старания! Не останавливайтесь, пожалуйста, Ваш канал по справедливости оценит аудитория и у Вас ещё будут миллионы просмотров.

  • @Dimkecola
    @Dimkecola Год назад +7

    Дай бог тебе здоровья и денег кучу! Чтобы я делал без тебя! Спасибо Вам огромное за труд.

  • @tamarazarizina4628
    @tamarazarizina4628 Год назад +5

    Вы идеальный преподаватель, желаю Вам всего самого лучшего)

  • @electron4ik123
    @electron4ik123 2 года назад +15

    Прохожу Ваш курс по ООП, узнал о лекциях по алгоритмам. Спасибо большое за проделанную работу.

  • @TonyStark-b3r
    @TonyStark-b3r Год назад +2

    Спасибо за урок.Вы делаете великое дело,жаль вы не мой учитель по информатике.Дай бог вам здровья и успехов

  • @devops8058
    @devops8058 3 года назад +7

    Я рад что попал на этот канал а то по разным местам собирал инфу

  • @AspiringToTheBest
    @AspiringToTheBest Год назад +11

    Один из немногих нормальных ютуберов, который делает все в одном месте, понятно и качественно. А главное старается помочь аудитории и экономит время, за что отдельный респект! Не останавливайся!) (p.s. летом тоже хочу канал начать вести, может посоветует кто что по тематике?))

    • @AspiringToTheBest
      @AspiringToTheBest Год назад +2

      лол а почему в репе отличается код для дейкстры? 😅

    • @selfedu_rus
      @selfedu_rus  Год назад +1

      @@AspiringToTheBest возможно, что-то правил потом, не помню уже. А по тематике канала, лучше брать то, что нравится и в чем разбираетесь, иначе будет тяжко )) Успехов!

  • @2000diker
    @2000diker 2 года назад +8

    Спасибо!!!
    В коде, при выборе v не 0, функция arg_min может возвращать значение 0, а значит условие "if v > 0:" не выполнится.
    При условии "if v >= 0" все работает чётко!
    Ещё раз спасибо большое за объяснения!!

  • @СарматПересветов
    @СарматПересветов 4 месяца назад +1

    Спасибо. В идеале конечно алгоритм должен искать не только расстояние но и кратчайший путь

  • @Sergei-11111
    @Sergei-11111 9 месяцев назад

    Провозившись несколько дней с испытаним "Бремя наследия" могу сказать "спасибо". Спасибо за то что по этому видео его выполнить невозможно. За то, что здесь отсутствует часть алгоритма по поиску собственно, маршрута (и понимание, что описание неполное и надо искать дальше приходит далеко не сразу). За то, что, как оказалось, программа на Git отличается от описания тут. И спасибо за то, что описания направленных и ненаправленных графов тут нет (а в тестах-то они есть). Просто великолепно...

  • @ressurextion3690
    @ressurextion3690 Год назад +2

    Прохожу ваш курс по ООП! Спасибо вам!

  • @МихаилЛебедев-п2и
    @МихаилЛебедев-п2и Год назад +3

    Большое спасибо за проделанную работу!

  • @МихаилХолостов-р1п
    @МихаилХолостов-р1п 3 года назад +4

    Спасибо! Сейчас буду до конца разбираться в реализации, но в целом все понятно объяснили.

  • @friend1cat
    @friend1cat 3 года назад +8

    Спасибо, Сергей!

  • @Quimorax
    @Quimorax 3 года назад +17

    Похоже что новый плейлист "Алгоритмы" не за горами)

    • @sergeyv1534
      @sergeyv1534 3 года назад +6

      Вот эти алгоритмы, крайне желательно:
      Линейная регрессия.
      Логистическая регрессия.
      Деревья решений.
      Метод опорных векторов.
      Метод k-ближайших соседей.
      Алгоритм случайный лес.
      Метод k-средних.
      Метод главных компонент.

  • @vladpronin5033
    @vladpronin5033 3 года назад +5

    Спасибо! За такое изложение алгоритмов нельзя скипать рекламу)

  • @elenatalley7899
    @elenatalley7899 3 года назад +4

    Спасибо! лучшее объяснение!

  • @nikitazinchenko2561
    @nikitazinchenko2561 3 года назад +5

    Спасибо, очень полезная информация !!!

  • @vitalicpodmarkov2336
    @vitalicpodmarkov2336 Год назад +1

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

  • @Ruslan501
    @Ruslan501 Год назад +2

    Ох, чел. Спасибо тебе!!!

  • @дашука-ч9т
    @дашука-ч9т 2 года назад +2

    Спасибо огромное, очень помог💖

  • @petersburgpietroburg
    @petersburgpietroburg 3 года назад +2

    Спасибо большое! Всё понятно стало.

  • @strawberrylynx6259
    @strawberrylynx6259 2 года назад +2

    спасибо за старания!!!

  • @man05ru
    @man05ru 2 года назад +6

    Один момент не совсем понятно. Объясните Сергей как после построения этой таблицы строить мин-й маршрут ?

  • @romanbykov5922
    @romanbykov5922 2 года назад +2

    Спасибо!

  • @abenderbey
    @abenderbey 12 дней назад +1

    Переменная Аминь!)

  • @tip_2469
    @tip_2469 2 года назад +4

    Можешь написать как в этой программе получить кратчайший путь до той же точки 5 или 2? номер целевой точки в идеале поместить в переменную. Тут суммируется длина к ним но как сам путь получить?

    • @tip_2469
      @tip_2469 2 года назад +1

      Попробовав утром и смог разобраться в этом питон коде и понять сам чёткий алгоритм действий

    • @artyr4an271
      @artyr4an271 Год назад

      привет, смог разобраться?
      @@tip_2469

    • @artyr4an271
      @artyr4an271 Год назад

      подскажи как ты сделал цель например до 5, а еще если смог начальную вершину запихнуть в переменную, например путь от 3 до 5, то буду благодарен)@@tip_2469

    • @tip_2469
      @tip_2469 Год назад

      @@artyr4an271 Я уже и не помню как переделывал этот скрипт. Сейчас это часть большой системы навигации AI в открытом мире с обходом опасных мест написанная на с++. ruclips.net/video/ZWPhXijmpW8/видео.html

  • @gbo4net
    @gbo4net Год назад +2

    Я тоже в начале не понял что это за вес такой что за цифры и откуда они взялись )))))
    Надеюсь вы не убежали сразу же как только поняли что ничего уже в начале не понимаете )))
    Я смотрел 3 раза что бы сообразить что за вес дуг )))))
    Для тез кто на первых минутах не понял что это за цифры ВЕС ДУГ. Имеется в виду некий промежуток времени или некое расстояние между точками. Допустим из этого графа (маршрута) от точки 1 до точки 2 расстояние 3 км или 3 часа. А от точки 1 до точки 4 расстояние 3км или 3 часа.
    Почему часы или километры ? Не важно, важно, что время затраченное или расстояние, от некой точки до некой точки составляет некую величину. И исходя из этих величин рассчитывается расстояние на которое вы потратите меньше времени или пробежите меньше километров.

  • @dedhood2183
    @dedhood2183 2 года назад +1

    ТОП!!!

  • @магомедтохчуков-ы3б

    спасибо!

  • @blanket8422
    @blanket8422 2 года назад +7

    Можно вариант кода, где переменные записаны словами, а не буквами. Пожалуйста, сложно код разбирать

  • @IM-gp9yj
    @IM-gp9yj 3 года назад +2

    Здравствуйте, это же только для двунаправленных графов?
    Будет видео для однонаправленных графов?

    • @selfedu_rus
      @selfedu_rus  3 года назад

      Пока нет, но вы можете и сами его модифицировать для однонаправленных

  • @sanyarud5676
    @sanyarud5676 3 года назад +4

    Ппц я это знаю. Но не так подробно. Спасипка большое

  • @a_z_i_m240
    @a_z_i_m240 2 года назад

    привет с тобой можно как-то связаться?
    у меня матрица 18на18 не работает

  • @ВикторЖигурда
    @ВикторЖигурда 3 года назад +2

    👍

  • @alexanderivanov899
    @alexanderivanov899 Год назад

    А как алгоритм знает между какими вершинами есть связь, а какими нету?

    • @DenisTrebushnikov
      @DenisTrebushnikov Год назад

      таблица смежности D. Вбита вручную на строках 20-25, в ней 0 - отсутствие связи, всё, что больше 0 - означает связь есть, а само значение - вес этой связи.

  • @playerhs7572
    @playerhs7572 10 месяцев назад

    Нифига не понял, но очень интересно!

  • @user709__aaa
    @user709__aaa 2 года назад

    подскажите пожалуйста, какая асимптотика у данного алгоритма? за сколько работает?

    • @selfedu_rus
      @selfedu_rus  2 года назад +1

      если не ошибаюсь O(n^2)

  • @vladimireliseev7602
    @vladimireliseev7602 3 года назад

    Извиняюсь, а где ссылочка на показанную в видео реализацию алгоритма на github?

    • @selfedu_rus
      @selfedu_rus  3 года назад +1

      github.com/selfedu-rus/python-algorithms (файл algorithm-dikstry.py)

    • @vladimireliseev7602
      @vladimireliseev7602 3 года назад

      Благодарю!

  • @MrIgor989
    @MrIgor989 3 года назад

    порекомендуите книги по алгоритмам

    • @selfedu_rus
      @selfedu_rus  3 года назад +2

      Классика - это Вирт Н. Алгоритмы и структуры данных

    • @MrIgor989
      @MrIgor989 3 года назад

      @@selfedu_rus Спасибо

    • @КириллНечаев-ц5р
      @КириллНечаев-ц5р 3 года назад +2

      @@selfedu_rus допустим, я хочу начать с третьей вершины, значит стартовый элемент я должен поменять на 2. (v=2.) Но алгоритм зацикливаться тогда. Подскажи, пожалуйста, как исправить?

    • @tanteriaaa
      @tanteriaaa 3 года назад +1

      @@КириллНечаев-ц5р жиза. Тоже никак не могу найти ошибку

  • @smartman-ef7wh
    @smartman-ef7wh 2 года назад +2

    А саму матрицу смежности программист вручную, на бумажке чертит и вносит ее в программу и будет играться с ней?

  • @EgrNegr-chugun
    @EgrNegr-chugun Год назад

    не понял код,видимо я еще слишком чайник(

  • @nicolasray6257
    @nicolasray6257 Год назад +1

    меня убивают эти названия переменных

  • @staylonely9743
    @staylonely9743 Год назад +7

    ужасное название переменных))

    • @lil_landau
      @lil_landau Год назад +1

      Зачем тебе нормальный нейминг, если это маленькая и локальная программа, которая не выйдет за пределы этого ролика...

    • @LizavetaSakalova
      @LizavetaSakalova 10 месяцев назад +1

      По этому комменту можно понять, что кто-то не решает алгоритмические задачи)

  • @freaxlover
    @freaxlover Год назад +1

    Спасибо, бро

  • @ИванЕвдокимов-л6ь
    @ИванЕвдокимов-л6ь 11 месяцев назад +2

    Здравствуйте. К сожалению ваш код не рабочий - программа зависает при таких данных:
    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  11 месяцев назад

      Бывает и такое )

  • @kosk4306
    @kosk4306 11 месяцев назад +1

    пиздец какой-то... нет, я, конечно, всё понимаю, но этого я не понимаю...

  • @mixa_football_ru
    @mixa_football_ru 8 месяцев назад +1

    Спасибо!!!