Шаг 3. Одна из временных меток превращается в постоянную:
Шаг 4.
Следовательно, возвращаемся на второй шаг.2-я итерация.
Шаг 2.
Шаг 3.
Шаг 4.
Переход на второй шаг.3-я итерация.
Шаг 2.
Шаг 3.
Шаг 4.
Переход на второй шаг.4-я итерация.
Шаг 2.
Шаг 3.
Шаг 4.
Переход на второй шаг.5-я итерация.
Шаг 2.
Шаг 3.
Шаг 4.
Конец первого этапа.Следовательно, длина кратчайшего пути равна
.Этап 2. Построение кратчайшего пути.
1-я итерация.
Шаг 5. Составим множество вершин, непосредственно предшествующих
с постоянными метками : Проверим равенстводля этих вершин:
т.е. т.е.Включаем дугу
в кратчайший путь,Шаг 6.
Возвращаемся на пятый шаг.2-я итерация.
Шаг 5.
Включаем дугу
в кратчайший путь, .Шаг 6.
. Завершение второго этапа.Следовательно, кратчайший путь построен. Его образует последовательность дуг:
.Окончательно, кратчайший путь от вершины
до вершины v6 построен. Его длина (вес) равна . Сам путь образует последовательность дуг:б) Определим максимальный поток
через сеть G. Для этого используем алгоритм Форда-Фалкерсона.Выбираем произвольно путь из вершины v1 в вершину v6 . Пусть это будет путь
. Минимальную пропускную способность на этом пути, равную 10, имеет дуга , т.е. Увеличим на этом пути поток до 10 единиц. Дуга становится насыщенной. Дуга имеет на данный момент пропускную способность, равную 10.Путь
Следовательно, поток на этом пути можно увеличить на 9 единиц. Дуги становятся насыщенными.Других маршрутов нет (другие маршруты проходят через насыщенные дуги). Поток максимален. Делаем разрез вокруг вершины v1 по насыщенным дугам
и получаем его величину
единиц.8. Используя алгоритм Краскала, построить остов с наименьшим весом для неориентированного взвешенного графа
, у которого , если заданы веса (длины) ребер:□ Построим граф G :
1. Упорядочим ребра в порядке неубывания веса (длины):
2. Возьмем ребро u1 и поместим его в строящийся остов.
Возьмем ребро u2 и поместим его в строящийся остов (т.к. оно не образует с предыдущим ребром цикла).
Берем ребро u3 и помещаем его в строящийся остов (т.к. оно не образует с предыдущими ребрами цикла).
Берем ребро u4 и помещаем его в строящийся остов (т.к. оно не образует с предыдущими ребрами цикла).
Берем ребро u5 и помещаем его в строящийся остов (т.к. оно не образует цикла с предыдущими ребрами).
Ребра
не рассматриваем, т.к. они образуют циклы с предыдущими ребрами.Проверим окончание алгоритма. Число входящих в остов ребер равно 5. Заданный граф имеет п = 6 вершин и
. Таким образом, остов содержит все вершины заданного графа G .Вес (длина) построенного остова
равен
.Литература
1. Горбатов В.А. Основы дискретной математики. – М.: Высшая школа, 1986. – 311 с.
2. Коршунов Ю.М. Математические основы кибернетики. – М.: Энерго атомиздат, 1987. – 496 с.
3. Кузнецов О.П., Адельсон-Вельский Г.М. Дискретная математика для инженера. – М.: Энергоатомиздат, 1988. – 480 с.
4. Шапорев С.Д. Дискретная математика. – СПб.: БХВ-Петербург, 2006. - 400 с.
5. Гаврилов Г.П., Сапоженко А.А. Задачи и упражнения по дискретной математике. – М.: ФИЗМАТЛИТ, 2005. – 416 с.
6. Хаханов В.И., Чумаченко С.В. Дискретная математика ( конспект теоретического материала). – Харьков: ХНУРЭ, 2003. – 246 с.
7. Богданов А.Е. Курс лекций по дискретной математике.–Северодонецк: СТИ, 2006. – 190 с.