
- •Виды графов
- •Изоморфизм
- •Матричное задание графа
- •Свойства матрицы смежности
- •Операции над графами
- •Достижимость и связность
- •Матрицы достижимости и контрдостижимости
- •Нахождение сильных компонент
- •Конденсация графа
- •Базы и антибазы
- •Построение компонент связности в неориентированном графе
- •Построение компонент связности в ориентированном графе
- •Система независимых циклов
- •Дерево. Остов граф
- •Процесс восстановления дерева по набору
- •Алгоритм построения произвольного остова
- •Определение минимального остова
- •Алгоритм построения системы независимых циклов графа
- •Определение кратчайшего пути на графе методом Дейкстры
- •Модификация Форда
- •Алгоритмы поиска всех кратчайших путей
- •Алгоритм Флойда
- •Алгоритм Флойда
- •Алгоритм Данцига
- •Алгоритм Данцига
- •Раскраска
- •Метод построения функции Гранди на графе
- •Свойства хроматического числа
- •Гамильтоновы пути, контуры и задача Коммивояжера
- •Метод Роберта и Флореса (перебор-метод для орграфов)
- •Применение метода ветвей и границ к решению задачи Коммивояжера.
- •Потоковые алгоритмы
- •Алгоритм поиска увеличивающего пути
- •Алгоритм поиска максимального потока
- •Алгоритм Форда и Фалкерсона
- •Модификация алгоритма поиска максимального потока при нескольких источниках и стоках
- •Алгоритм поиска потока минимальной стоимости
- •Алгоритм поиска потока минимальной стоимости
- •Алгоритмы построения покрывающих деревьев
- •Алгоритм построения покрывающего дерева славик?!! последняя :-(
Операции над графами
I Объединение графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция объединения графов производится по следующим правилам:
Множеством вершин результирующего графа G (X, Г) является объединение множество вершин исходных графов
Отображение для каждой вершины результирующего графа получается путём объединения отображений той же вершины для исходных графов
(рис.20)
Рис.20
G1 (X1, Г1) G2 (X2, Г2)
Рис.21
II Пересечение графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция пересечения графов осуществляется по следующим правилам:
Множество вершин результирующего графа G (X, Г) является пересечением множеств вершин исходных графов
Отображение для каждой вершины результирующего графа получается путём пересечения отображений той же вершины для исходных графов
Пример:
Рис.22
III Разность графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция разности графов производится по следующим правилам:
Множество вершин результирующего графа G (X, Г) является множеством вершин
графа G1 без множества вершин
графа G2
Отображение для каждой вершины результирующего графа получается как разность между всем множеством вершин Х и отображением рассматриваемой вершины в G1
Пример:
х3
G (X, Г)
Рис.23
IV Произведение графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция произведения графов осуществляется по следующим правилам:
Множеством вершин результирующего графа G (X, Г) является объединение множеств вершин исходных графов
Отображение для каждой вершины результирующего графа определяется по правилу:
, где
– отображение вершины в графе G1,
– отображение вершин множества в графе G2 .
Пример: даны два графа G1 и G2
х1
х3
х2
х4
Рис.24
G1 (X1, Г1) G2 (X2, Г2)
Рис.25
V Декартовое произведение двух графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция декартового произведения двух графов производится по следующим правилам:
Вершины декартового произведения получаются путём последовательного сочетания каждой из вершин первого графа с каждой из вершин второго графа
Отображение каждой вершины результирующего графа получается путём возможных сочетаний каждого отображения графа G1 с каждым из отображений графа G2 для соответствующих вершин
Пример: даны два графа G1 и G2
Рис.26
G1 (X1, Г1) G2 (X2, Г2)
{x1, a2}
Рис.27
и так далее для каждой вершины
VI Сумма графов
G (X,
Г) =
,
где G1 и G2
– исходные графы.
Операция суммы графов осуществляется по следующим правилам:
Множество вершин результирующего графа получается таким же образом, как и в операции декартового произведения
Отображение для каждой вершины результирующего графа G получается путём объединения двух сочетаний, одно из которых образовано отображениями вершины графа G1 с вершиной графа G2, а другое – вершиной графа G1 и отображением вершины в графе G2
Пример:
VII Расширение графа – превращение дуги, соединяющей любые две вершины, в
элементарный путь.
Рис.28
до расширения после расширения
VIII Стягивание графа – на множестве вершин графа выделяется подмножество вершин
и производится стягивание вершин этого подмножества в одну вершину.
Рис.29
до стягивания после стягивания