Алгоритм Дейкстры применяется для поиска кратчайших путей из одного истока в сетях с неотрицательными весами. intuit.ru
Процесс выполнения алгоритма: math.gsu.by
- Выбрать начальную вершину, от которой до другой заданной вершины отыскивается кратчайший путь. math.gsu.by Остальные вершины включить в перечень невыбранных. math.gsu.by Определить расстояния от заданной начальной вершины до всех остальных. math.gsu.by
- Выбрать новую вершину по наименьшему расстоянию, исключив её из перечня невыбранных. math.gsu.by Число невыбранных вершин уменьшить на 1. math.gsu.by Дугу перехода, определившую наименьшее расстояние, включить в перечень дуг кратчайшего пути. math.gsu.by
- Определить расстояния от новой выбранной вершины до всех невыбранных с учётом пройденных от начальной точки расстояний. math.gsu.by Если расстояние до некоторой вершины меньше ранее определённого, то заменить его новым значением. math.gsu.by Отбрать наименьшее расстояние и перейти к новой вершине, исключив её из перечня невыбранных. math.gsu.by Число невыбранных вершин уменьшить на 1. math.gsu.by Дугу перехода включить в перечень дуг кратчайшего пути и так далее, пока не будет достигнут заданный конечный пункт или не будут выбраны все вершины графа. math.gsu.by
Алгоритм Дейкстры относится к «жадным» алгоритмам: на каждом шаге к списку выбранных вершин добавляется та из оставшихся вершин, расстояние до которой от начальной вершины меньше, чем для других оставшихся вершин. math.gsu.by