Лекция 1. Графы. Простейшие свойства графов. Пути ...
-
Upload
khangminh22 -
Category
Documents
-
view
2 -
download
0
Transcript of Лекция 1. Графы. Простейшие свойства графов. Пути ...
Лекция 1. Графы. Простейшие свойстваграфов. Пути, цепи и циклы. Связность,k-связность. Деревья, корневые деревья.
Лектор — Селезнева Светлана Николаевна[email protected]
факультет ВМК МГУ имени М.В. Ломоносова
Лекции на сайте http://mk.cs.msu.ru
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Граф
(Неориентированным) графом G называется пара (V ,E ),где V — непустое конечное множество вершин; E — конечноемножество ребер, причем каждому ребру e ∈ E сопоставленанеупорядоченная пара вершин, т. е. e = (v ,w), где v ,w ∈ V .
Обозначения:
V (G ) — множество вершин графа G ,
E (G ) — множество ребер графа G .
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Пример: сеть
Сеть — p узлов c соединениями между некоторыми из них.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Петли и кратные ребра
Ребро e = (v , v), где v ∈ V , называется петлей.
Ребра e1 = (v ,w) и e2 = (v ,w), где v ,w ∈ V и e1 6= e2,называются кратными ребрами.
Граф, в котором допускаются и петли, и кратные ребра иногданазывается псевдографом.Граф без петель, но, возможно, с кратными ребраминазывается мультиграфом.Граф без петель и кратных ребер называется простым, илиобыкновенным графом.
Мы будем, как правило, рассматривать простые графы, т. е.графы без петель и кратных ребер.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Смежность
Говорят, что ребро e = (v ,w) соединяет вершины v и w , илиисходит из вершины v (и из вершины w), или вершины v и wинцидентны ребру e.
При этом вершины v и w называются концами ребра e, илисмежными (соседними) по ребру e.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Изображения графов
Для наглядности графы можно изображать: вершинамставятся в соответствие точки (разным вершинам —различные точки); ребрам сопоставляются непрерывныелинии, соединяющие соответствующие вершины (точки)(разным ребрам — различные линии).
Пусть G = (V ,E ), где V = {1, 2, 3}, E = {e1, e2, e3}, гдеe1 = (1, 2), e2 = (1, 2) и e3 = (1, 3).
u1 ������
e1
u2e3
u3
e2G :
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Изоморфизм графов
Два графа без петель и кратных ребер
G1 = (V1,E1) и G2 = (V2,E2)
называются изоморфными, если найдется взаимнооднозначное отображение ϕ : V1 → V2, сохраняющее ребра, т. е.для любых вершин v ,w ∈ V1 выполняется соотношение:
(v ,w) ∈ E1 ⇔ (ϕ(v), ϕ(w)) ∈ E2.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Пустые и полные графы
Пустым графом On называется граф с n вершинами, вкотором нет ни одного ребра (т. е. с пустым множествомребер), n > 1.
Полным графом Kn называется граф с n вершинами, вкотором любые две различные вершины смежны, n > 1.
Полный граф K3 называется также треугольником.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Двудольные графы
Двудольным графом называется граф, в котором вершиныможно так разбить на две непересекающиеся части (доли), чтосмежны только вершины из разных долей.
Полным двудольным графом Km,n называется двудольныйграф с долями из m и n вершин, в котором смежны любые двевершины из разных долей, m, n > 1.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Дополнительный граф
Дополнительным графом к графу G = (V ,E ) называетсяграф G = (V , E ), где
E = {(v ,w) | v ,w ∈ V , v 6= w , (v ,w) /∈ E}.
Т. е. дополнительный граф G содержит те же вершины, что играф G , и любая пара различных вершин в нем смежна том итолько в том случае, когда эта пара вершин не смежна вграфе G .
Другими словами, дополнительный граф G содержит те жевершины, что и граф G , и в точности все те ребра, которые несодержит граф G .
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Степень вершины
Степенью dG (v) вершины v ∈ V в графе G = (V ,E )называется число исходящих из нее ребер (причем петлявносит двойной вклад в степень вершины).
Степень dG (v) вершины v ∈ V в графе без петель и кратныхребер G = (V ,E ) совпадает с числом смежных с ней вершин.
Если dG (v) = 0, то вершина v называется изолированной вграфе G ; если dG (v) = 1, то вершина v называется висячей,или концевой, в графе G .
Обозначения: δ(G ) = minv∈V
dG (v) и ∆(G ) = maxv∈V
dG (v) —
соответственно, наименьшая и наибольшая степени вершинв графе G .
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Формула Эйлера для степеней вершин
Предложение 1. Пусть G = (V ,E ) — граф без петель икратных ребер. Тогда1)
∑v∈V
dG (v) = 2|E |;
2) в графе G число вершин, имеющих нечетную степень, четно.
Доказательство.1. Рассмотрим сумму в левой части равенства. Т. к. любоеребро графа имеет ровно два конца, каждое ребро в этойсумме будет подсчитано ровно два раза. Получаем выражениев правой части равенства.2. Свойство непосредственно следует из равенства п. 1.
�
Отметим, что формула Эйлера для степеней вершин верна идля псевдографов.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Пути в графах
Путем в графе G = (V ,E ) из вершины v0 в вершину vm (или(v0, vm)-путем) называется последовательность вершин иребер графа G
v0e1v1e2v2 . . . vm−1emvm,
в которой ej = (vj−1, vj) ∈ E для каждого j = 1, . . . ,m, m > 0.
При этом вершина v0 называется началом пути, вершина vmназывается концом пути. Число m ребер пути называется егодлиной.
Для графов без петель и кратных ребер путь однозначноопределяется последовательностью вершин v0v1v2 . . . vm−1vm.
Цепь — путь без повторений ребер.
Простая цепь — цепь без повторений вершин.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства путей и цепей
Предложение 2. Пусть G = (V ,E ) — граф без петель икратных ребер. Тогда в графе G из любого пути можновыделить простую цепь, соединяющую те же вершины, что иэтот путь.
Доказательство. Пусть P — (v ,w)-путь в G , где v ,w ∈ V .Покажем, что из пути P можно выделить простую (v ,w)-цепь.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства путей и цепей
Доказательство. Если в P никакая вершина, не повторяется,то он — искомая простая (v ,w)-цепь.
Пусть некоторая вершина u ∈ V в нем повторяется, т. е.
P = vP1uP2uP3w ,
где vP1u, uP2u, uP3w — непересекающиеся пути, на которыеразбивается путь P двумя повторами вершины u. При этомпервый или третий из них может быть пустым (если u = v илиu = w), но второй из них всегда содержит хотя бы одно ребро.
Тогда повторим эти рассуждения для (v ,w)-путиP ′ = vP1uP3w , имеющего меньшую длину.
Через конечное число шагов получим искомую простую(v ,w)-цепь.
�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Циклы в графах
Замкнутый путь — путь, в котором последняя вершинасовпадает с первой.
Цикл — замкнутый путь без повторений ребер.
Простой цикл — цикл, в котором все вершины, кромепоследней, различны.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства цепей и циклов
Предложение 3. Пусть G = (V ,E ) — граф без петель икратных ребер. Тогда
1) в графе G из любого замкнутого пути нечетной длины m,m > 3, можно выделить простой цикл нечетной длины;
2) в графе G найдутсяа) простая цепь с длиной, не меньшей δ(G ),б) простой цикл с длиной, не меньшей δ(G ) + 1 при δ(G ) > 2.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства цепей и циклов
Доказательство.1. Рассмотрим замкнутый путь P нечетной длины m, m > 3.Если в нем никакая вершина, кроме последней, не повторяется,то он — искомый простой цикл нечетной длины. Пустьнекоторая вершина v ∈ V в нем повторяется, т. е.
P = vP1vP2v ,
где vP1v , vP2v — непересекающиеся непустые замкнутые пути,на которые вершина v разбивает путь P . Пусть m1,m2 —длины замкнутых путей P1,P2, причем m1 < m и m2 < m. Изтого, что m = m1 + m2 и m — нечетное число, заключаем, чтолибо m1 — нечетное число, либо m2 — нечетное число.Повторим рассуждения для нового замкнутого пути P ′ = vPivс меньшей нечетной длиной mi . Через конечное число шаговполучим искомый простой цикл нечетной длины.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства цепей и циклов
Доказательство.2. а) Рассмотрим произвольную вершину v0 ∈ V . ПоложимP0 = v0 — простая цепь длины 0. Пусть мы уже построилипростую цепь Pi = v0v1 . . . vi длины i .
Если i = δ(G ), то Pi — искомая простая цепь.
Пусть i < δ(G ). Т. к. dG (vi ) > δ(G ), найдется такая вершинаvi+1 ∈ V , не совпадающая ни с одной из вершин v0, v1, . . . , vi−1,что (vi , vi+1) ∈ E . Добавим эту вершину vi+1 к цепи Pi , т. е.построим простую цепь Pi+1 = v0v1 . . . vivi+1 длины (i + 1).
Через δ(G ) шагов мы получим искомую простую цепь.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства цепей и циклов
Доказательство.2. б) Пусть мы построили простую цепь Pm = v0v1 . . . vmдлины m = δ(G ). Если найдется такая вершина vm+1, несовпадающая с вершинами v0, v1, . . . , vm, что (vm, vm+1) ∈ E ,то добавим эту вершину vm+1 к цепи Pm, т. е. построимпростую цепь Pm+1 = v0v1 . . . vmvm+1 длины (m + 1).
Так будем действовать до тех пор, пока не получим такуюпростую цепь Pm′ = v0v1 . . . vm . . . vm′ длины m′, m′ > m, чтовсе вершины, с которыми связана вершина vm′ , лежат нацепи Pm′ .
Пусть vi0 , i0 < m′, — вершина с наименьшим номером нацепи Pm′ , с которой связана вершина vm′ . Тогда искомыйпростой цикл C = vi0 . . . vm′vi0 .
�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Подграф
Граф H = (V ′,E ′) называется подграфом графа G = (V ,E ),если V ′ ⊆ V , E ′ ⊆ E .
Подграф H = (V ,E ′) графа G = (V ,E ), т. е. подграф,содержащий все вершины графа G , называется его остовнымподграфом.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Операции над графами
Операции над графами:
Граф G − e, где e ∈ E : G − e = (V ,E \ {e}).
Граф G − v , где v ∈ V , — граф с множеством вершин V \ {v}и с множеством ребер E без всех ребер с концами в вершине v .
Граф G + e, где e = (v ,w), e /∈ E :G + e = (V ∪ {v ,w},E ∪ {e}).
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Связность
Граф G = (V ,E ) называется связным, если для каждой парывершин v ,w ∈ V в графе G найдется (v ,w)-путь (а значит, ипростая (v ,w)-цепь).
Максимальный (по включению) связный подграф графа Gназывается его компонентой связности.
Если G — связный граф, то у графа G ровно одна компонентасвязности.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Связность
Пусть G = (V ,E ) — граф. Рассмотрим отношение R ⊆ V 2 намножестве его вершин V : если v ,w ∈ V , то R(v ,w) в томслучае, когда в G найдется (v ,w)-путь.
Тогда R — рефлексивно, симметрично и транзитивно, т. е. R —отношение эквивалентности на множестве V .
Каждый класс эквивалентности по отношению R порождаеткомпоненту связности графа G .
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Пример: связная сеть
Связная сеть — p узлов c такими соединениями между ними,что из любого узла можно передать данные в любой другой(возможно, через промежуточные узлы).
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства связных графов
Предложение 4. Пусть G = (V ,E ) — связный граф без петельи кратных ребер. Тогда
1) в графе G1 = G + e, где e = (v ,w) /∈ E , v ,w ∈ V , найдетсяцикл;
2) граф G2 = G − e, где ребро e принадлежит циклу, являетсясвязным.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства связных графов
Доказательство.1. Граф G — связный, поэтому в нем найдется (v ,w)-путь, азначит, и простая (v ,w)-цепь P . В графе G1 простая цепь Pтакже содержится. Тогда C = vPw(w , v)v — искомый цикл вграфе G1.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства связных графов
Доказательство.2. Пусть ребро e принадлежит циклу C в графе G . Рассмотримдве произвольные вершины v ,w в графе G2. Эти же вершиныпринадлежат графу G . Граф G — связный, поэтому в графе Gнайдется (v ,w)-путь P . Если путь P не проходит через ребро e,то он содержится и в графе G2. Если же путь P проходит черезребро e, то заменим в нем это ребро ребрами,принадлежащими оставшейся части цикла C . Получим(v ,w)-путь в графе G2.
�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Число компонет связности
Теорема 1. Пусть G = (V ,E ) — граф без петель и кратныхребер с p вершинами, q ребрами и s компонентами связности.Тогда
1) s > p − q;
2) если в графе G отсутствуют циклы, то s = p − q.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Число компонет связности
Доказательство.1. Рассмотрим переход от графа Gi = (V ,Ei ) к графуGi+1 = Gi + e, где Ei ⊆ E , e ∈ E \ Ei . Пусть в графах Gi ,Gi+1соответственно si , si+1 компонет связности. Тогда если ребро eсоединяет вершины из одной компоненты связности графа Gi ,то si+1 = si ; и если ребро e соединяет вершины из разныхкомпонент связности графа Gi , то si+1 = si − 1. Поэтому
si+1 > si − 1.
Граф G можно получить из графа G0 = (V , ∅) с pкомпонентами связности последовательным добавлением всехребер множества E . Поэтому s > p − q.2. Если же в графе G нет циклов, то в предыдущихрассуждениях верно si+1 = si − 1. Поэтому s = p − q.
�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
k-связность
Граф G = (V ,E ) называется k-связным, если он содержит неменее k вершин и при удалениии из него не более (k − 1)любых вершин остается связный граф, k > 1.
Граф G = (V ,E ) называется реберно k-связным, если приудалениии из него не более (k − 1) любых ребер остаетсясвязный граф, k > 1.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Пример: надежная связная сеть
Если связная сеть определяется реберно двусвязным графом,то при выходе из строя любого ее соединения остается такжесвязная сеть.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Дерево
Деревом называется связный граф без циклов.
Граф без циклов (без условия связности) называется лесом.
Отметим, что любая компонента связности леса являетсядеревом.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Теорема 2 (о равносильных определениях дерева). ПустьG = (V ,E ) — граф с p вершинами и q ребрами. Тогдаследующие утверждения равносильны:
1) G — дерево, т. е. связный граф без циклов;
2) G — связный граф и q = p − 1;
3) G — граф без циклов и q = p − 1;
4) G — граф без циклов, но при соединении любой парынесмежных вершин ребром появляется цикл;
5) G — связный граф, но при удалении любого ребра остаетсянесвязный граф.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Доказательство. 1⇒ 2.
Дано: G — связный граф без циклов.Доказать: G — связный граф и q = p − 1.
Обоснование. По условию G связный.
По условию G без циклов, поэтому по соотношению для Gмежду числом вершин p, числом ребер q и числом компонентсвязности s = 1 получаем: 1 = s = p − q.
Значит, q = p − 1.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Доказательство. 2⇒ 3.
Дано: G — связный граф и q = p − 1.Доказать: G — граф без циклов и q = p − 1.
Обоснование. По условию q = p − 1.
Если в связном графе G найдется цикл, то удалим из Gнекоторое ребро e из цикла. Останется связный граф G ′. Посоотношению для G ′ между числом вершин p, числомребер q − 1 и числом компонент связности s ′ = 1 получаем:s ′ > p − (q − 1) = (p − q) + 1 = 2 — противоречие.
Значит, G без циклов.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Доказательство. 3⇒ 4.
Дано: G — граф без циклов и q = p − 1.Доказать: G — граф без циклов, но при соединении любойпары несмежных вершин ребром появляется цикл.
Обоснование. По условию G без циклов.
По соотношению для G между числом вершин p, числомребер q и числом компонент связности s получаем:s = p − q = 1, т. е. G связный.
Значит, при соединении в G любой пары несмежных вершинребром появится цикл.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Доказательство. 4⇒ 5.
Дано: G — граф без циклов, но при соединении любой парынесмежных вершин ребром появляется цикл.Доказать: G — связный граф, но при удалении любого ребраостается несвязный граф.
Обоснование. Если G не связный, то при соединении двухвершин из разных компонент связности цикл не появится.Значит, G связный.
Пусть при удалении из G некоторого ребра e остался связныйграф G ′. Тогда G получается из связного графа G ′
добавлением нового ребра e. Поэтому в G найдется цикл —противоречие.
Значит, при удалении из G любого ребра останется несвязныйграф.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Деревья
Доказательство. 5⇒ 1.
Дано: G — связный граф, но при удалении любого ребраостается несвязный граф.Доказать: G — связный граф без циклов.
Обоснование. По условию G связный.
Если в G найдется цикл, то удалим из G любое ребро изцикла. Останется связный граф —противоречие.
Значит, G без циклов.�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства деревьев
Предложение 5.
1. В любом дереве с хотя бы двумя вершинами найдется неменее двух висячих вершин.
2. В любом дереве любые две различные вершины соединеныровно одной простой цепью.
3. Если к дереву добавить ребро, соединяющее его несмежныевершины, то получится граф с ровно одним простым циклом.
4. Если из дерева удалить любое ребро, то останется граф сровно двумя компонентами связности.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Свойства деревьев
Доказательство.
1. Доказывается от обратного, что в дереве найдется хотя быодна висячая вершина. Затем опять от обратного, что в деревенайдется не менее двух висячих вершин.
2. Следует из зависимости между числом вершин, ребер икомпонент связности в графе, т. к. в дереве нет циклов.
3. Если какие-то вершины соединены более, чем одной простойцепью, то из объединения двух из этих цепей можно выделитьцикл, чего не может быть.
4. Ровно один простой цикл появится, т. к. по свойству 3 этивершины в исходном дереве соединены ровно одной простойцепью.
5. Следует из свойств связных графов, т. к. в дереве нет циклов.�
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Корневые деревья
Корневым деревом называется пара (D; v0), гдеD = (V ,E ) — дерево, v0 ∈ V — выделенная вершина,называемая корнем.
При изоморфизме корневых деревьев корень обязан переходитьв корень.
Висячая вершина корневого дерева, не являющаяся корнем,называется листом.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Поддеревья в корневом дереве
Пусть (D; v0) — корневое дерево, и (v0, v1), . . . , (v0, vm) — всеребра, исходящие из вершины v0 в дереве D.Тогда каждая компонента связности графа G − v0 являетсядеревом, и пусть D1, . . . ,Dm — все эти деревья.Каждое из корневых деревьев (Di ; vi ) называется поддеревомкорневого дерева D, i = 1, . . . ,m.
Обходом в глубину из вершины v0 назовем следующий обходдерева D:1) перейти в непройденное поддерево Di , обойти его в глубинуиз вершины vi и вернуться в вершину v0;2) если пройдены все поддеревья, то закончить обход.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Задачи
1. Найти число неизоморфных графов G = (V ,E ) (без петельк кратных ребер), если:1) |V | = 4;2) |V | = 5 и G — несвязный граф без изолированных вершин;3) |V | = 6, |E | = 7 и в G ровно 2 висячие вершины;4) |V | = 6, |E | = 12.Изобразить эти неизоморфные графы.
2. Найти число неизоморфных деревьев D = (V ,E ), если:1) |V | = 3;2) |V | = 4;3) |E | = 6 и в D ровно 3 висячие вершины;4) |E | = 6 и в D ровно 4 висячие вершины.Изобразить эти неизоморфные деревья.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Задачи
3. Найти число неизоморфных корневых деревьев (D; v0),D = (V ,E ), v0 ∈ V , если:1) |V | = 3;2) |V | = 4;3) |E | = 6 и в D ровно 3 листа;4) |E | = 6 и в D ровно 4 листа.Изобразить эти неизоморфные корневые деревья.
4. Найти число неизоморфных остовныха) деревьев; б) корневых деревьев в графе G , если:1) G = K3;2) G = K4;3) G = K4 − e, где e — произвольное ребро графа K4;4) G = K2,3.Изобразить эти неизоморфные деревья.
Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи
Задачи
5. В дереве D ровно 156 вершин степени 4, остальныевершины — степени 1 или 2. Найти число вершин степени 1 вдереве D.
6. Связный граф G содержит 295 концевых вершин, остальныеего вершины имеют степень 2 или 3. Кроме того, в графе Gровно один цикл. Найти число вершин степени 3 в графе G .
7. Сформулировать определение изоморфизма дляпсевдографов.
8. Верны ли предложения 1–41) для мультиграфов;2) для псевдографов?Если верны, то обосновать; если не верны, то указать, как надоизменить формулировки, чтобы они стали верными.