Скачиваний:
11
Добавлен:
20.05.2014
Размер:
114.18 Кб
Скачать

Билет №9. Изложите алгоритм построения кратчайшего пути в данном взвешенном графе. Приведите пример решения этой задачи.

Пусть дан взвешенный неориентированный граф, и в нём выделены две вершины S и F. Длиной пути в таком графе называют сумму длин его рёбер. Требуется указать алгоритм построения кратчайшего пути, ведущего из вершины S в вершину F.

Предлагаемый алгоритм основан на применение меняющихся от шага к шагу систем меток, которые снабжаются вершины графа.

Метка, приписываемая на шаге t, вершины a, обозначается мю(сверху (t)) (a). В качестве меток используются неотриц действительные числа и беск., счит больше любого числа. Различают постоянные метки и переменные. По итогам каждого шага одна метка графа объявляется постоянной (ещй одна). Кроме того по итогам каждого шага назнач вершина-лидер для след. шагаю

Длина ребра, соед вершины i и j обознач Cij.

Работа алгоритма прекращается, когда вершина F получит постоянную метку

  1. Расставляются метки

мю(0) (S)=0,

Постоянной объявляется только метка вершины S. Вершина S назначается так же лидером след. шага. Пусть проделаные шаги с номеро 0, k-1 и последний из них, не явл заключительными

k) Пусть лидерам этого шага служит вершина i.

Рассматриваем все вершины, смежные с нею, для тех из них метки кот переменны, полагаем =min{}

Метки всех остальных вершин по итогам шага k не меняются. Постоянной объявляется минимальная из переменных меток мю(k), причём к конкурсу допускаются все метки рассматриваемого графа. Эта же вершина объявляется лидеров для след. шага.

К завершению этой процедуры постоянная метка вершины F является лишь длинной кратчайшего пути, соед S и F. Сам кратчайший путь находиться путём анализа системы постоянных меток, построенных к этому моменту.

Соседние файлы в папке Ответы на билеты за 2008 год (doc)