- •32. Определение графа, орграфа, мультиграфа и псевдографа
- •Пример.
- •33. Степень вершины. Лемма Эйлера. Теорема о числе вершин нечетной степени
- •Смежность вершин и ребер графа. Матрица смежности.
- •Примеры.
- •37. Типы подграфов. Остовное дерево. Циклический ранг.
- •38. Изоморфизм графов.
- •39. Связанность графа. Маршрут, цепь, простая цепь, цикл. Лемма о цепи.
- •Пример.
- •40. Связанность графа. Разделяющее множество, разрез, мост, точка сочленения. Лемма о точках сочленения
- •41. Расстояние между вершинами графа. Диаметр, радиус, центр графа.
- •Доказательство:
- •50. Эйлеровы графы. Лемма о цикле. Теорема о необходимых и достаточных условиях эйлеровости графа
- •Алгоритм Флери (алгоритм построения эйлерова цикла).
- •53. Гамильтоновы графы. Задача коммивояжера и методы ее решения.
50. Эйлеровы графы. Лемма о цикле. Теорема о необходимых и достаточных условиях эйлеровости графа
Определение. Если граф имеет цикл(не обязательно простой), содержащий все ребра графа по одному разу, то такой цикл называется эйлеровым циклом, а такой граф – эйлеровым графом.
Если граф имеет цепь (не обязательно простую), содержащую все ребра графа по одному разу, то такая цепь называется эйлеровой цепью, а граф – полуэйлеровым графом.
Лемма о цикле: Если в псевдографе G(V,E) есть хотя бы одно ребро и нет висячих вершин, то в нем существует по крайней мере один простой цикл.
Доказательство
(конструктивное).
Пусть в G имеется хотя бы одна петля e =
(v,v), тогда простой цикл vev. Пусть в G
имеются кратные рёбра
,
,
тогда простой цикл
.
Пусть в G
нет петель и кратных рёбер, а
- смежные вершины, которые найдутся, так
как в G
есть ребро. Рассмотрим последовательность
вершин
в которой
смежные,
а
.
Поскольку в G
не висячих вершин, такую последовательность
можно продолжать неограниченно. Так
как число вершин в графе конечно, то
произойдёт совпадение
,
тогда
- простой цикл.
Теорема о необходимых и достаточных условиях эйлеровости графов: для того, чтобы связный граф был эйлеровым, необходимо и достаточно, чтобы степени всех его вершин были четными.
Необходимость. Пусть G – эйлеров граф, следовательно, он обладает эйлеровым циклом. Двигаясь по циклу, будем подсчитывать степени вершин. Так как все рёбра в циклу различны, прохождение каждой вершины добавляет 2 в степень этой вершины. Так как в цикл входят все рёбра, то когда обход будет закончен, будут определены степени всех вершин, которые будут чётными.
Достаточность.
Индукция по q. При q = 1 связный граф с
чётными степенями вершин выглядит
следующим образом: V = v, E = (v,v) , а в таком
графе есть эйлеров цикл. Пусть для
достаточность доказана для всякого
псевдографа с числом рёбер меньшим q.
Докажем её для графа G с числом рёбер q.
В силу леммы о цикле, в G существует
простой цикл
.
Если он содержит все рёбра графа G,
эйлеров цикл найден. Если нет, удалим
входящие в цикл рёбра из G, получим граф
.
Степени вершин при этом не изменятся
либо уменьшатся на два, так что граф
состоит из компонент связности, которые
либо являются изолированными вершинами,
либо графами с чётными степенями вершин.
Пусть
- компоненты связности
,
отличные от изолированных вершин. По
индуктивному предположению, в каждой
из них существует эйлеров цикл
в силу связности G имеющий хотя бы одну
общую вершину
с циклом
.
Построим эйлеров цикл для G следующим образом: двигаясь по циклу и попадая в очередную вершину присоединяем к циклу и следум дальше по . Полученный цикл будет эйлеровым.
51. Эйлеровы графы. Алгоритм Флери
Определение. Если граф имеет цикл (не обязательно простой), содержащий все ребра графа по одному разу, то такой цикл называется эйлеровым циклом, а такой граф – эйлеровым графом.
Если граф имеет цепь (не обязательно простую), содержащую все ребра графа по одному разу, то такая цепь называется эйлеровой цепью, а граф – полуэйлеровым графом.
Алгоритм Флери (алгоритм построения эйлерова цикла).
Идем по ребрам графа, соблюдая правила:
Удаляем пройденные ребра и изолированные вершины, которые при этом образуются.
Идем по мосту только тогда, когда нет других возможностей.
По теореме граф является эйлеровым.
На
диаграмме ребра пронумерованы в порядке
их прохождения, таким образом эйлеров
цикл
52. Гамильтоновы графы. Теорема Дирака.
Определение. Если граф имеет простой цикл, содержащий все вершины графа, то такой цикл называется гамильтоновым циклом, а граф – гамильтоновым графом. Если граф имеет цепь, содержащую все вершины, то такая цепь называется гамильтоновой цепью, а граф полугамильтоновым.
Теорема
(Дирак).
Если в графе G(V,E)
с p
вершинами
,
то граф G
является гамильтовым.
Обратное неверно.
Пример.
p
= 8,
,
граф является гамильтовым.
Не существует алгоритмов получения гамильтонова цикла, эффективных в вычислительном смысле, то есть требующих полиномиального времени.
Теорема
Дирака.
Если в графе число вершин
и степень каждой вершины
,
то в графе существует гамильтонов цикл.
Условие не является необходимым.
Доказательство:
Докажем от противного. Пусть есть граф
G ,
,
гамильтонова цикла пусть нет. Если
гамильтонова цикла нет, то его можно
сделать гамильтоновым, добавив вершины
и ребра. Обозначение u-добавленная
вершина. Пусть граф имеет вид
,
-смежная
с
Тогда
не смежная
,
иначе можно было бы построить
,
т.е.вершину
не нужно было бы добавлять. Рассуждая
дальше, получаем, что число вершин,
смежных с
,
не меньше числа вершин, не смежных с
.
-число
вершин, не смежных с
,
-число
вершин, смежных с
(степень),
,
но дано
,
Получаем
противоречия
,
то есть для получения гамильтонова
цикла новую вершину не нужно добавлять.
Так проверить все добавленные вершины.
