
- •Глава 4. Графы
- •4.1. Введение в теорию графов
- •Графы и терминология
- •4.2. Гамильтоновы графы
- •Алгоритм ближайшего соседа
- •4.3. Деревья
- •Поиск минимального остовного дерева
- •Контрольные вопросы
- •Задачи для самостоятельного решения
- •Основные тезисы
- •4.4. Ориентированные графы
- •Алгоритм топологической сортировки
- •Пути в орграфах
- •Кратчайший путь
- •Алгоритм Дейкстры
- •Контрольные вопросы.
- •Задания для самостоятельного выполнения
- •Основные тезисы
Основные тезисы
Ориентированным графом или орграфом называют пару G = (V, Е), где V — конечное множество вершин, а Е — отношение на V. Элементы множества Е называют дугами орграфа.
Если uv — дуга орграфа, то вершину и называют антецедентом v.
Путем длины k в орграфе называют такую последовательность различных вершин v0, v1, …, vk, в которой каждая пара vi-1 vi образует дугу (i = 1,..., k).
Контуром в орграфе G принято называть последовательность вершин v0, vi, ..., vk , образующую путь, в которой первая v0 совпадает с последней, а других повторяющихся вершин в ней нет.
Орграф называют бесконтурным, если в нем нет контуров. В задаче о планировании заданий соответствующий бесконтурный орграф называют системой ПЕРТ.
Последовательность согласованных меток бесконтурного орграфа G = (V, Е) — это метки: 1, 2, 3, ..., п вершин, причем если uv — дуга орграфа, соединяющая вершину и с меткой i и вершину v с меткой j, то i < j.
Для орграфа можно выписать последовательность согласованных меток тогда и только тогда, когда он не имеет контуров. Алгоритм топологической сортировки генерирует последовательность согласованных меток бесконтурного орграфа.
Пусть G = (V, Е) — орграф с п вершинами и матрицей смежности М. Логическая степень Мк матрицы смежности хранит информацию о существовании путей длины k между произвольной парой вершин орграфа G. Матрица
М* = М или М2 или ... или Мn
называется матрицей достижимости орграфа. В ней записана информация о существовании путей между вершинами.
Алгоритм Уоршелла используется для вычисления матрицы достижимости орграфа. Алгоритм генерирует последовательность матриц W0, W1, W2, …, Wn, где W0 = M, Wn = M* а для любого k≥1 матрица Wk строится по Wk-\ следующим образом:
1. Берем k-ый столбец матрицы Wk-1.
2. Каждую строчку, у которой на k-ом месте стоит Л, переписываем в соответствующую строку матрицы Wk.
3. Каждую строчку, у которой на k-ом месте стоит И, спариваем с помощью операции или с k-ой строкой, а результат записываем в соответствующую строку матрицы Wk
Кратчайшим путем между произвольной парой вершин в нагруженном орграфе называется путь наименьшего общего веса. Общий вес кратчайшего пути, ведущего от вершины u к v, называется расстоянием от и до v. Если пути от и до v не существует, то расстояние между ними принято считать бесконечным и обозначать символом ∞.
Алгоритм Дейкстры определяет кратчайшие пути в нагруженном графе от данной вершины до любой другой.