Добавил:
north memphis Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КиТГр Экзамен Билеты Расписанные 2025.pdf
Скачиваний:
15
Добавлен:
29.01.2025
Размер:
3.64 Mб
Скачать

На следующем шаге выбираем наименьшую вершину (F) и строим от нее путь.

Вершина G при проходе через F будет иметь вес 21. После этого рассматриваем две оставшиеся вершины по 7 и убеждаемся, что путь от них до G будет длиннее, чем через F.

Напоследок рассматриваем путь из вершины I и находим, что он является кратчайшим до

вершины G (15). Кратчайшим путем будет A-B-I-G длинной 15.

***

Казакевич на лекции вносила все шаги в таблицу, где слева по вертикали номер шага, а сверху

по горизонтали вершины, типо протокол. Возле каждого веса вершины указывается вершина потомок.

64. Алгоритм Форда-Беллмана – постановка задачи (???), описание, пример.

Нахождение кратчайшего пути из одной вершины в другую. Работает точно так же как и

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

разделяй как-нибудь текст, чтобы он не был сплошным – тяжело читать будет

65. Алгоритм Джорджа Флойда – постановка задачи (???), описание, пример.

Алгоритм Флойда используется для построения кратчайших путей взвешенного графа

Алгоритм (Флойда)

Вход: Взвешенный граф .

Алгоритм неприменим, если существуют отрицательные циклы

Псевдокод:

While :

While :

​ While :

 

 

\\

– длина кратчайшего пути из в

Пример

Дан взвешенный граф:

Шаг ноль: строим матрицу смежности

Шаг один: строим по вершине А (перебирая каждый путь по матрице, смотрим получится ли он короче через вершину А):

Шаг два: строим по вершине B (перебирая каждый путь по матрице (в том числе через новые образованные пути), смотрим получится ли он короче через вершину В):

Шаг три: строим по вершине С (перебирая каждый путь по матрице (в том числе через новые образованные пути), смотрим получится ли он короче через вершину С):

Шаг четыре: строим по вершине D (перебирая каждый путь по матрице (в том числе через новые образованные пути), смотрим получится ли он короче через вершину D):