
- •В. Н. Степанов дискретная математика: графы и алгоритмы на графах
- •Предисловие
- •1. Основные понятия теории графов
- •1.1. Граф и его разновидности
- •1.2. Морфизмы графов
- •1.3. Степени вершин
- •1.4. Маршруты, цепи, циклы, связность
- •1.5. Операции над графами
- •1.6. Примеры графов
- •1.7. Метрические характеристики графов
- •1.8. Представления графов
- •2. Алгоритмы и сложность
- •2.1. Понятие алгоритма
- •2.2. Сложность алгоритма
- •2.3. Запись алгоритма
- •3. Обходы графов
- •3.1. Поиск в глубину на графе
- •3.2. Поиск в ширину на графе
- •3.3. Алгоритм выделения компонент связности
- •4. Деревья
- •4.1. Деревья. Свойства деревьев
- •4.2. Остовы. Теорема Кирхгофа
- •4.3. Теорема Кэли
- •4.4. Фундаментальная система циклов. Цикломатическое число
- •4.5. Алгоритм отыскания фундаментального множества циклов на графе
- •5. Остов минимального веса. Алгоритм Краскала и Прима
- •5.1. Алгоритм д. Краскала
- •5.2. Алгоритм р. Прима
- •6. Кратчайшие пути между вершинами графа
- •6.1. Алгоритм Дейкстры
- •6.2. Алгоритм Флойда
- •7. Эйлеровы графы
- •7.1. Теорема Эйлера
- •7.2. Алгоритм Флёри
- •8. Гамильтоновы графы
- •8.1. Гамильтоновы маршруты. Задача коммивояжера
- •8.2. Существование гамильтоновых маршрутов
- •9. Алгоритмы отыскания гамильтоновых циклов
- •9.1. Алгоритм с возвратом (полного перебора)
4.2. Остовы. Теорема Кирхгофа
Подграф
исходного графа
,
являющийся деревом и содержащий все
его вершины, называется остовом.
Теорема 4.2.1. Граф тогда и только тогда содержит остов, когда он связен.
Доказательство. Если граф не связен, то все его подграфы, у которых множество вершин совпадает с множеством вершин исходного графа, несвязны и не могут содержать дерева.
Обратно. Пусть граф связен. Выясним, имеется ли в нем ребро, удаление которого не нарушает связности. Если таких ребер нет, то граф сам является остовным деревом. Если такое ребро есть, то удалим его и выясним, имеется ли в полученном графе ребро, удаление которого не нарушает связности, и так далее.
Когда удаление ребра без нарушения связности станет невозможным, получим остовное дерево.
Эта теорема дает также алгоритм построения некоторого остовного дерева.
Для подсчета числа остовов графа используется матрица Кирхгофа.
Теорема
4.2.2.
[Кирхгоф Г.]. Число
остовных деревьев в связном графе
порядка
равно алгебраическому дополнению любого
диагонального элемента матрицы Кирхгофа
,
где
Подсчитаем, например, число всех остовов графа, изображенного на рис. 4.2.1.
Матрица Кирхгофа этого графа имеет вид:
Минор любого диагонального элемента этой матрицы равен
Следовательно, данный граф имеет 16 остовных деревьев.
Следствие
4.2.1.
Число остовов в полном графе
равно
.
Доказательство.
Утверждение очевидно для
и
.
Пусть
.
Имеем
.
Вычислив
определитель
-го
порядка, получаем
.
4.3. Теорема Кэли
Обозначим
через
число помеченных деревьев с
вершинами. Ясно, что
.
Помеченное дерево с тремя вершинами
полностью определяется центральной
вершиной, поэтому
.
Дерево с четырьмя вершинами представляет
собой либо полный двудольный граф
,
либо простую (незамкнутую) цепь длины
три. Различных помеченных деревьев
первого типа имеется четыре, а второго
–
(крайние вершины цепи выбираются
способами, после чего для нумерации
двух оставшихся вершин остается
возможности); таким образом,
Дерево с пятью вершинами имеет один из
трех видов, изображенных на рис. 4.3.1.
|
Количество
деревьев типа «цепь» равно
типа
.
Произвольное дерево третьего типа
определяется метками вершин
и их число равно
Итак,
Последовательность
может быть задана соотношением
Число помеченных деревьев с шестью
вершинами также нетрудно подсчитать,
после чего равенство
получит еще одно подтверждение. В общем
случае имеет место теорема.
Теорема
4.3.1.
[Кэли А., 1897 г.]. Число
помеченных деревьев с
вершинами равно
Доказательство. Так как число помеченных деревьев порядка n равно числу остовов в полном графе , то теорема эквивалентна следствию 4.2.1.
По формуле подсчитывается число всех деревьев с данными вершинами. Многие из этих деревьев изоморфны. Число неизоморфных деревьев подсчитывается по алгоритму теории Пойа (см., например, [11]).