Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
2 / 2 / 0
Регистрация: 27.09.2017
Сообщений: 9

Алгоритм Дейкстры (поиск кратчайшего пути в графе)

20.03.2020, 15:56. Показов 2797. Ответов 1

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Пытаюсь разобраться в алгоритме Дейкстры по книжке "Грокаем алгоритмы", статье на Википедии и видеоуроках. Вопрос, собственно, вот в чём: зачем сортировать соседей текущего узла по их стоимости, если в любом случае нужно обойти все узлы графа, и на определение кратчайшего пути эта сортировка никак не влияет? Во всех источниках говориться что-то на подобии: "после обновления стоимостей соседних узлов, берём узел с минимальной стоимостью и рассматриваем его соседей" и так далее... В чём смысл этого "минимального" соседа? По-моему, это лишняя трата процессорного времени. Я написал реализацию этого алгоритма на С++ и он прекрасно работает без выбора "минимального". Может я неправильно его понял?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.03.2020, 15:56
Ответы с готовыми решениями:

Поиск кратчайшего пути в графе
Здравствуйте. Есть задача осуществить поиск кратчайшего пути между двумя заданными вершинами в графе. Также существует условие, что при...

Алгоритм Дейкстры - нахождение кратчайшего маршрута до каждой вершины
Привет. Понятно как находить кратчайший путь до каждой вершины из заданной. Непонятно как проложить маршрут. Например, вот статья :...

Нахождение кратчайшего пути в графе (алгоритм Дейкстры)
Здравствуйте, помогите пожалуйста, СРОЧНО,написать псевдокод реализации нахождения кратчайшего пути в графе на языке СИ. Ввод производиться...

1
Модератор
Эксперт функциональных языков программирования
3135 / 2282 / 469
Регистрация: 26.03.2015
Сообщений: 8,884
22.03.2020, 22:36
Лучший ответ Сообщение было отмечено Romashka911 как решение

Решение

Суть алгоритма Дейкстры в этой сортировке. Без неё это будет обычный обход графа в ширину.

Например, если у нас есть квадратное поле и нам нужно найти кратчайший путь от центра к углу, то алгоритм Дейкстры будет пробовать только клетки, лежащие на соответствующей диагонали - всего n/2 клеток. А без сортировки (обход в ширину) будет пробовать все соседние клетки - всего n2 клеток.

Не знаю, что Вы называете стоимостью. Сортировка по оценке длины пути, которая складывается из уже посчитанной стоимости пути от начальной точки до текущей и оценки для длины пути от текущей точки до конечной.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.03.2020, 22:36
Помогаю со студенческими работами здесь

Поиск кратчайшего пути (алгоритм Дейкстры) с наименьшим максимальным ребром
Есть классическая реализация Дейкстры, пытаюсь добавить условие: если есть несколько кратчайших путей, то вывести минимальную из...

Алгоритм Дейкстры, нахождение кратчайшего пути
Доброго времени суток всем! У меня вопрос. Написала программку для нахождения кратчайшего пути (алгоритм Дейкстра), но мне надо её как то...

Алгоритм Дейкстры (нахождение кратчайшего пути)
Можно как то еще оптимизировать процедуру в плане скорости? или это предел для чистого QB? SUB ROUTE (S AS INTEGER, F AS INTEGER) ...

Алгоритм Дейкстры поиска кратчайшего пути
Помогите решить задачу. У меня с графами проблемы Разработать и реализовать в виде программы алгоритм Дейкстры для заданного графа с...

Нахождение кратчайшего пути между заданными городами (алгоритм Дейкстры)
Народ, подскажите пожалуйста, на кону допуск к сессии. Чего то я запутался с этими списками. Буду оень признателен. "Разработать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru