Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы логики для бизнес-информатиков. Отображения и отношения. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
ребра 𝑢и 𝑢
являются перешейками, при удалении любого из них граф
распадается на две компоненты связности.
a b
Рис. 25. Пример существования шарнира
Рис. 26. Пример существования перешейка
Утверждение 30. Ребро является перешейком в том и только том случае, если в графе нет простого цикла, содержащего это ребро.
4.5. МЕТРИЧЕСКИЕ ХАРАКТЕРИСТИКИ ГРАФОВ
Расстоянием между двумя вершинами 𝑎 и 𝑏 графа называется
длина наименьшего пути, соединяющего эти вершины, и обозначается
через 𝑑󰇛𝑎, 𝑏󰇜. Если в графе нет пути, соединяющего 𝑎 и 𝑏, т. е. эти вер-
шины принадлежат разным компонентам связности, то расстояние между ними считается бесконечным.
Расстояние от данной вершины 𝑎 до наиболее удаленной от нее вер­шины называется эксцентриситетом вершины 𝑎 и обозначается через
𝑒𝑐𝑐󰇛𝑎󰇜 . Вершину с наименьшим эксцентриситетом называют цен-
тральной, а вершину с наибольшим эксцентриситетом – периферий­ной. Множество всех центральных вершин называется центром графа.
51
Сама величина наименьшего эксцентриситета называется радиусом
графа 𝐺 и обозначается через 𝑟𝑎𝑑󰇛𝐺󰇜, а величина наибольшего – диа- метром и обозначается 𝑑𝑖𝑎𝑚󰇛𝐺󰇜.
Очевидно, что диаметр и радиус полного графа совпадают и равны единице.
Рис. 27. Пример графа
Рассмотрим пример графа 𝐺 из рис. 27. В табл. 1 приведены эксцен-
триситеты всех вершин этого графа. Из таблицы видно, что вершины
𝑎, 𝑎, 𝑎𝑎_6, 𝑎 являются центральными, а вершины 𝑎, 𝑎, 𝑎
– пери-
ферийными, а также 𝑟𝑎𝑑󰇛𝐺󰇜 2 и 𝑑𝑖𝑎𝑚󰇛𝐺󰇜 3.
Таблица 1
Подсчет эксцентриситетов
Вершины
𝑒𝑐𝑐󰇛𝑎󰇜
𝑎 𝑎 𝑎 𝑎 𝑎 𝑎 𝑎
𝑎
3 2 2 2 3 2 2 3
4.6. ЭЙЛЕРОВЫ ПУТИ И ЦИКЛЫ
Первая теорема теории графов была доказана задолго до того, как стало употребляться словосочетание «теория графов». В 1736 г. появи­лась работа Эйлера, в которой не только была решена предложенная ему задача о кенигсбергских мостах (рис. 28), но и сформулировано общее правило, позволяющее решить любую задачу такого рода.
На рис. 28 схематически изображена карта города Кенигсберга, от­носящаяся к XVIII в. Город расположен на берегах и двух островах реки
52
Преголи. Острова между собой и с берегами были связаны семью мо­стами. Немецкий ученый Л. Эйлер, живший в то время в Кенигсберге, любил размышлять над проблемой: можно ли, выйдя из дома, вернуться обратно, пройдя по каждому мосту только один раз.
Рис. 28. Схематичное изображение
мостов в г. Кенигсберге
Построим граф, соответствующий данному рисунку. Вершинами графа будут берега реки, а также острова (рис. 29). Ребра графа будут интерпретировать мосты. Тогда наша задача сводится к задаче нахож­дения пути, проходящего через все его ребра. Такой путь называется эй- леровым путем, а если он замкнут, то эйлеровым циклом.
Рис. 29. Граф, изображающий
мосты г. Кенигсберга
Теорема Эйлера. Эйлеров цикл в связном графе существует тогда и только тогда, когда каждая вершина графа имеет четную степень.
Доказательство. Необходимость условия очевидна, так как при каждом прохождении цикла через какую-либо вершину используются два ребра: по одному из них маршрут входит в вершину, по другому – выходит из нее (это относится и к стартовой вершине, потому что в ней маршрут должен закончиться). Докажем его достаточность.
53
Пусть 𝐺 – связный граф, в котором больше одной вершины и сте-
пени всех вершин четны. Значит, степень каждой вершины не меньше 2,
поэтому по Утверждению 28 в графе 𝐺 имеется цикл 𝑍 все ребра этого цикла из графа 𝐺, то получится граф 𝐺 пени вершин также четны. Если в 𝐺 нет ни одного ребра, то 𝑍
. Если удалить
, в котором сте-
– эйле-
ров цикл. В противном случае, применяя Утверждение 28 к графу, по-
лученному из 𝐺 что в 𝐺 имеется цикл 𝑍. Удалив из 𝐺 все ребра цикла 𝑍 граф 𝐺
. Продолжая действовать таким образом, пока не придем к пу-
стому графу, получим в итоге систему циклов 𝑍,…,𝑍
удалением всех изолированных вершин, заключаем,
, получим
, причем каждое
ребро графа принадлежит в точности одному из них. Покажем теперь, что из этих циклов можно составить один цикл. Действительно, из того, что исходный граф связен, следует, что хотя бы один из циклов
𝑍,…,𝑍
Допустим для определенности, что таков цикл 𝑍 󰇟𝑥; 𝑥;…;𝑥󰇠 и 𝑍
имеет общую вершину с 𝑍

󰇟𝑦; 𝑦;…;𝑦󰇠, а также 𝑥𝑦

.
. Пусть 𝑍

для некоторых
𝑖 и 𝑗. Тогда последовательность вершин
󰆒
𝑍
󰇟𝑥; 𝑥;…;𝑥; 𝑦


; 𝑦
;…;𝑦; 𝑦;…;𝑦


; 𝑦; 𝑥

;…𝑥󰇠
очевидно является циклом (рис. 30), а множество ребер этого цикла есть
объединение множеств ребер циклов 𝑍 и 𝑍

.
Рис. 30. Доказательство теоремы Эйлера
Таким образом, получаем систему из меньшего числа циклов, по­прежнему обладающую тем свойством, что каждое ребро графа принад­лежит в точности одному из них. Действуя далее таким же образом, в конце концов получим один цикл, который и будет эйлеровым.
54
4.7. ДЕРЕВЬЯ
Деревом называется связный граф, не имеющий циклов. Тупиковые вершины в дереве принято называть листьями. Граф, состоящий из не­скольких компонент связности, каждая из которых является деревом, называется лесом.
Утверждение 31. В каждом дереве (содержащем более одной вер­шины) не меньше двух листьев.
Утверждение 32. Для любого дерева с 𝑛 вершинами и 𝑚 ребрами
выполняется условие
𝑚𝑛1.
Доказательство. Будем использовать метод математической индук­ции по количеству вершин. Для случая с одной вершиной утверждение является очевидным. Если в дереве не менее двух вершин, значит име­ется хотя бы один лист, то при его удалении мы получим снова дерево, поскольку циклы не возникнут, а связность останется. В этом новом де-
реве будет 𝑛 1 вершин, и согласно предположению индукции в нем будет 𝑛 2 ребер. Таким образом, в исходном дереве должно было быть 𝑛1 ребер.
Утверждение 33. Если граф 𝐷 – дерево, то выполняется следующее:
1) любая пара вершин дерева 𝐷 соединена единственным путем;
2) при добавлении к дереву 𝐷 любого нового ребра образуется цикл;
3) при удалении из дерева 𝐷 любого ребра он превращается в несвяз-
ный граф.
Доказательство. Докажем пункт 1. Существование пути между лю­быми двумя вершинами вытекает из связности дерева. Предположим, что в некотором дереве имеются два разных пути, соединяющих вер-
шины 𝑎 и 𝑏. Начальные сегменты этих путей совпадают (оба начина­ются в одной и той же вершине 𝑎). Обозначим последнюю вершину этого общего сегмента как 𝑐, после чего в одном пути следует вер­шина 𝑑, а в другом – вершина 𝑒 (рис. 31).
Рассмотрим ребро 󰇛𝑐, 𝑒󰇜. Если мы удалим его из графа, то в остав­шемся подграфе вершины 𝑑 и 𝑒 останутся соединенными: мы можем построить маршрут 󰇟𝑎; … ; 𝑐; 𝑑; … ; 𝑏; … ; 𝑒󰇠 . Это означает, что ребро
55
󰇛𝑐, 𝑒󰇜 не является перешейком. Однако согласно Утверждению 30 в де-
реве каждое ребро должно быть перешейком.
Пункты 2 и 3 очевидным образом следуют из пункта 1.
Рис. 32. Доказательство
Рис. 31. Доказательство
Утверждения 33
Утверждения 34
Утверждение 34. Центр дерева состоит из одной вершины или из двух смежных вершин.
Доказательство. Допустим, что в некотором дереве имеются две
несмежные центральные вершины 𝑐 и 𝑐
. На пути, соединяющем эти
вершины, найдем промежуточную вершину 𝑎 с максимальным эксцен­триситетом. Пусть 𝑏 и 𝑏 – вершины, соседние с 𝑎 на этом пути (рис.
32). Рассмотрим вершину 𝑥, наиболее удаленную от 𝑎 в дереве, т. е. 𝑑󰇛𝑎, 𝑥󰇜𝑒𝑐𝑐󰇛𝑎󰇜. Путь, соединяющий 𝑎 с 𝑥, не может проходить через
обе вершины 𝑏 и 𝑏. Допустим, он не проходит через 𝑏
. Тогда един-
ственный путь из 𝑏 в 𝑥 проходит через 𝑎 и 𝑑󰇛𝑏, 𝑥󰇜𝑑󰇛𝑎, 𝑥󰇜. Отсюда
󰇜
следует, что 𝑒𝑐𝑐󰇛𝑏 если 𝑏𝑐; или противоречит тому, что 𝑐 если 𝑏𝑐
.
𝑒𝑐𝑐󰇛𝑎󰇜, а это противоречит выбору вершины 𝑎,
– центральная вершина,
Следовательно, любые две центральные вершины смежные, а так как в дереве не может быть трех попарно смежных вершин, то в нем не больше двух центральных вершин.
В дереве часто выделяется одна вершина, которая выполняет функ­цию «начала отсчета». Дерево с такой выделенной вершиной называ­ется корневым деревом, а сама вершина – корнем. Таким образом,
56
из дерева с 𝑛 вершинами можно образовать 𝑛 различных корневых де-
ревьев (рис. 33).
Рис. 33. Примеры корневых деревьев
Корневые деревья часто используются в компьютерных науках для представления иерархий, таких как файловые системы, структуры дан­ных (например, бинарные деревья), и в алгоритмах, связанных с поис­ком и сортировкой.
4.8. ДВУДОЛЬНЫЕ ГРАФЫ
Граф называется двудольным, если множество его вершин можно так разбить на два подмножества, чтобы концы каждого ребра принад­лежали разным подмножествам. Эти подмножества называются долями. Таким образом, каждая из долей порождает пустой подграф (рис. 34).
Рис. 34. Двудольный граф
Примером двудольного графа является простая цепь 𝑃
при лю-
бом 𝑛: одна доля порождается вершинами с четными номерами, другая – с нечетными (рис. 35). Граф 𝐾
– пример графа, не являющегося дву-
дольным: при любом разбиении множества его вершин на два подмно­жества в одном из этих подмножеств окажутся две смежных вершины
(рис. 36).
57
Рис. 35. Изображение цепи
в виде двудольного графа
Рис. 36. Граф 𝐾
Прикладное значение понятия двудольного графа связано с тем, что с помощью таких графов моделируются отношения между объектами двух типов, а такие отношения часто встречаются на практике (напри-
мер, отношение «продукт 𝑥 используется в производстве изделия 𝑦» между исходными продуктами и готовыми изделиями, или «работник 𝑥 владеет профессией 𝑦» между работниками и профессиями).
Утверждение 35. Граф 𝐺 является двудольным тогда и только то-
гда, когда в нем нет циклов нечетной длины.
Доказательство. Пусть 𝐺 – двудольный граф, в котором выбрано некоторое разбиение на доли. Допустим, что в графе 𝐺 есть цикл 𝐶
󰇟𝑥; 𝑥;…;𝑥; 𝑥󰇠 длины 𝑘. Тогда для любого индекса 𝑖1, 𝑘1 вершины 𝑥 и 𝑥
смежны и, следовательно, принадлежат разным до-

лям. Таким образом, одна доля состоит из всех вершин с нечетными
58
индексами, другая – из всех вершин с четными индексами. Однако вер-
шины 𝑥 и 𝑥
тоже смежны и должны принадлежать разным долям.
Следовательно, 𝑘 – четное число.
Зафиксируем в графе 𝐺 некоторую вершину 𝑎 и докажем, что для любых двух смежных между собой вершин 𝑏 и 𝑏
имеет место равен-
ство
|
𝑑󰇛𝑎, 𝑏
Действительно, допустим сначала, что 𝑑󰇛𝑎, 𝑏
󰇜
𝑑󰇛𝑎, 𝑏
|
1.
󰇜
𝑑󰇛𝑎, 𝑏
󰇜
𝑡.
Пусть
󰇟𝑎  𝑥; 𝑥;…,𝑥
кратчайший путь из 𝑎 в 𝑏
и
󰇟𝑎  𝑦; 𝑦;…,𝑦
кратчайший путь из 𝑎 в 𝑏. Поэтому найдется такое 𝑘, что 𝑥𝑦
; 𝑏𝑥󰇠

; 𝑏𝑦󰇠

и 𝑥𝑦 для всех 𝑖𝑘. Значит, последовательность
󰇟𝑥; 𝑥
является простым циклом длины 2
;…;𝑥; 𝑦;…;𝑦

; 𝑦󰇠

󰇛
𝑡𝑘󰇜1 . Это противоречит
условию, что все циклы должны быть четной длины. Следовательно,
󰇜
𝑑󰇛𝑎, 𝑏
𝑑󰇛𝑎, 𝑏
Предположим, что 𝑑󰇛𝑎, 𝑏 кратчайший путь из 𝑎 в 𝑏, то очевидно, что 󰇟𝑥; 𝑥;…,𝑥 кратчайший путь из 𝑎 в 𝑏. Следовательно, 𝑑󰇛𝑎, 𝑏
󰇜
.
󰇜
𝑑󰇛𝑎, 𝑏
󰇜
. Если 󰇟𝑥
󰇜
𝑑󰇛𝑎, 𝑏
; 𝑥;…,𝑥

; 𝑥󰇠 –

; 𝑥; 𝑏󰇠 –
󰇜
1.
Итак, расстояния от двух смежных вершин до вершины 𝑎 различа­ются ровно на единицу. Обозначим через 𝐴 графа, расстояние от которых до вершины 𝑎 четно, а через 𝐴
множество всех вершин
– множе-
ство всех вершин, расстояние от которых до вершины 𝑎 нечетно. Тогда для каждого ребра графа один из его концов принадлежит множеству 𝐴 другой – множеству 𝐴. Следовательно, граф 𝐺 – двудольный.
,
59
4.9. ПЛАНАРНЫЕ ГРАФЫ
Геометрический граф – это плоская фигура, состоящая из вер­шин – точек плоскости и ребер – линий, соединяющих некоторые пары вершин. Всякий граф можно многими способами представить геометрическим графом.
Геометрический граф, в котором никакие два ребра не имеют общих точек, кроме инцидентной им обоим вершины, называют плоским гра­фом, т. е. плоский граф – это граф, который можно нарисовать на плос­кости так, чтобы его ребра не пересекались, кроме как в вершинах. Не каждый граф допускает плоскую укладку. Граф, для которого суще­ствует плоская укладка, называется планарным графом.
Если плоскость разрезать по ребрам плоского графа, она распадется на связные части, которые называют гранями. Всегда имеется одна не­ограниченная внешняя грань, все остальные грани называются внутрен­ними. Если в плоском графе нет циклов, то у него имеется только одна грань. Если же циклы есть, то граница каждой грани содержит цикл, но не обязательно является циклом. На рис. 37 показан плоский граф с пя­тью занумерованными гранями. Граница грани с номером 4 состоит из двух циклов. Грань с номером 5 неограниченная.
Рис. 37. Плоский граф
с занумерованными гранями
Множества ребер, образующие границы граней, могут быть раз­ными для разных плоских укладок одного и того же графа. На рис. 38
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]