Лекция 1. Графы. Простейшие свойства графов. Пути ...

47
Лекция 1. Графы. Простейшие свойства графов. Пути, цепи и циклы. Связность, k -связность. Деревья, корневые деревья. Лектор Селезнева Светлана Николаевна [email protected] факультет ВМК МГУ имени М. В. Ломоносова Лекции на сайте http://mk.cs.msu.ru

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) для псевдографов?Если верны, то обосновать; если не верны, то указать, как надоизменить формулировки, чтобы они стали верными.

Графы Пути и цепи Циклы Подграфы Связность Деревья Задачи

Литература к лекции

1. Емеличев В.А., Мельников О.И., Сарванов В.И., ТышкевичР.И. Лекции по теории графов. М.: Либроком, 2009. С. 9–11,17, 22–25, 26–27, 53–55.

2. Харари Ф. Теория графов. М.: Мир, 1973. С. 22–28, 48–51.