лекция 4(граф, дополнен)

advertisement
Задачи, приводящие к теории
графов.
Основные понятия и
определения.
Леонард Эйлер
• 1707-1783
Задачи, приводящие к теории
графов
• Попробуйте нарисовать закрытый конверт одним росчерком, т.е.,
не отрывая карандаша от бумаги и не проводя дважды один и тот
же отрезок.
• А если конверт распечатать?
Задача о Кёнигсбергских мостах
•
Впервые над задачей описанного выше типа задумался Леонард Эйлер после
посещения города Кенигсберга (ныне Калининград).
•
В городе было семь мостов через реку Прегель.
A
D
B
C
•
•
•
Гостям города предлагали задачу: пройти по всем мостам ровно один раз. Никому
из гостей не удавалось справиться с задачей.
Эйлер отметил на карте города по одной точке на каждом берегу реки и на каждом
острове.
Затем он соединил эти точки в соответствии с расположением мостов. Задача
обхода мостов свелась к задаче изображения одним росчерком следующей
картинки
A
B
C
D
Задача о трех домах и трех колодцах
•
•
Всегда ли можно изобразить граф на плоскости так, чтобы его ребра не
пересекались? Впервые этот вопрос возник при решении старой
головоломки. Вот как ее описывает Льюис Кэрролл.
В трех домиках жили три человека, неподалеку находилось три колодца:
один с водой, другой с маслом, а третий с повидлом. Однако хозяева
домиков перессорились и решили провести тропинки от своих домиков к
колодцам так, чтобы эти тропинки не пересекались. Первоначальный
вариант по этой причине их не устраивал.
Основные понятия и определения
Определение 1
Под графом будем понимать пару (V , E ) , где V – произвольное
непустое множество, а E – подмножество множества
V ( 2 ) ( E  V ( 2) )
Если множество V конечно, то граф называется конечным,
иначе – бесконечным.
Элементы множества V называются вершинами графа, а
элементы множества E – ребрами графа.
Вершины графа обозначают точками на плоскости, а ребра
графа – кривыми на плоскости, соединяющими
соответствующие точки. Такие рисунки называют графами.
Множество вершин и ребер графа G обозначают V(G) и E(G)
соответственно.
Пример
b
a
g
c
f
e
d
G
V (G )  a, b, c, d , e, f , g , E (G )  (a, b), (a, c), (a, d ), (a, f ), (b, c),
(b, g ), (b, e), (c, e), (d , f ).
Определение 2
a) Если в графе допускается существование повторяющихся
(кратных) ребер, то граф называется мультиграфом.
a) Если в графе, кроме того, допускается существование петель, т.е.
ребер, соединяющих вершину саму с собой, то граф называется
псевдографом.
Пример
G1
G - мультиграф, G - псевдограф
1
2
G2
Определение 3
Если мощность множества V равна n , то число n называется
порядком графа.
Определение 4
Если мощность множества V равна n, а мощность множества E
равна m, то граф называется (n,m) - графом.
Определение 5
Две вершины графа называются смежными, если они соединены
ребром.
Определение 6
Два ребра называются смежными, если они выходят из
одной вершины.
Определение 7
Ребро и вершина называются инцидентными, если данная
вершина является концом данного ребра.
Определение 8
Окружением вершины v в графе G называется множество смежных
с ней вершин графа G. Обозначают: N (v), N (v) .
G
Вернемся к примеру.
Пример
b
a
g
c
f
e
d
G
N ( a )  ? Смежны ли вершины a и b , a и g ?
Смежны ли ребра ( a , b ) и ( a , d ), ( a , b ) и ( c , e ) ?
Являются ли инцидентны ми вершина f и ребро ( f , d ) ?
Определение 9
Граф называется пустым, если в нем нет ребер.
Обозначают: On или En – пустой граф порядка
n.
Определение 10
Граф называется полным, если любые две его вершины
соединены ребром.
Обозначают: K n или Fn – полный граф порядка n .
Пример
. O1
. . O2
K4
K3
Теорема 12
n(n  1)
Число ребер в по лном графе порядка n равно
.
2
Определение 12
Пусть дан граф G  (V , E ) . Дополнением графа
(или дополнительным графом к
G
G ) называется граф G  (V , E V ( 2 ) ) ,
т.е. V (G )  V (G ) и любые две несовпадающие вершины смежны в
тогда и только тогда, когда они не смежны в
G.
Пример
1
2
3
1
4
G
2
3
4
G
G
Метрические характеристики
графа
Определение 1
Последовательность вершин и ребер графа
вида a0 (a0 , a1 )a1 (a1 , a 2 )a 2 (a 2 , a3 )a3 ...a n 1 (a n 1 , a n )a n
называется маршрутом, соединяющим вершины a 0 и a n .
Замечание
Очевидно, ч то маршрут можно однозначно задать
последовательностью только вершин : a1 , a 2 ,..., a n или
только ребер:
(a1 , a 2 ), (a 2 , a3 ),..., (a n 1 , a n ) .
Определение 2
Граф называется связным, если любые две его вершины соединены маршрутом.
Пример
1
2
3
4
5
G – связный граф
a
b
c
d
f
g
G ' – несвязный граф
Определение 3
Длиной маршрута называется число входящих в него ребер.
Определение 4
Расстоянием между вершинами u и v мы будем называть длину
кратчайшего соединяющего их маршрута. Обозначают: d (u , v ) .
Расстояние между двумя вершинами, которые нельзя соединить
никаким маршрутом, считаем равным бесконечности (  ).
Пример
4
6
7
10
9
1
2
3
5
8
11
Из вершины 1 в вершину 8 существует несколько маршрутов,
например: маршрут 1,2, 3, 5, 8, его длина равна 4;
маршрут 1,2, 4, 3, 5, 6, 7, 8, его длина равна 7;
маршрут 1,2, 3, 5, 6, 7, 9, 7, 6, 5, 8, длиной 10.
Длина кратчайшего маршрута, соединяющего вершины 1 и 8, равна 4: d(2, 8)=3.
d(1, 9)=5, d(2, 6)=3, d(10,11)=1, d(7,11)=  .
Определение 5
Пусть дана вершина u . Расстояние до наиболее удаленной от u вершины
графа называется эксцентриситетом вершины u . Обозначают: e(u ) .
e(u )  max d (u, x) .
xV
Определение 6
Радиусом графа G называется наименьший из эксцентриситетов всех
его вершин. Обозначают: r (G ) .
r (G )  min e(u ) .
uV
Определение 7
Наибольший из эксцентриситетов всех вершин графа
его диаметром. Обозначают: d (G ) .
G называется
d (G )  max e(u ) .
uV
Определение 8
Множество вершин графа G с наименьшими эксцентриситетами
называют центром графа G и обозначают Z(G), а сами вершины
называют центральными.
Определение 9
Вершины с наибольшим эксцентриситетом называются диаметральными
или периферийными.
Теорема 10
Для любого связного графа G r (G )  d (G )  2r (G ) .
Следствие 11
d (G )
 2.
Если G - связный граф, то 1 
r (G )
Замечание
e(v)(v G),r(G),d(G),Z(G) называют метрическими
характеристиками графа G.
Пример
4
6
7
9
1
2
3
5
8
e(1)  5, e(2)  4, e(3)  3, e(4)  4, e(5)  3, e(6)  4,
e(7)  5, e(8)  4, e(9)  5
r (G )  3;
d (G )  5;
Z (G )  3,5;
1,7,9 - диаметральные вершины.
Задача
Доказать, что для любого рационального числа из интервала
отношением диаметра к радиусу, равным этому числу.
1;2
существует граф с
Степени вершин графа
Определение 1
Степенью (валентностью) вершины называется число инцидентных ей ребер.
Обозначают: o(V ), deg(V ) .
Определение 2
Вершина степени 1 называется висячей.
Вершина степени 0 называется изолированной.
Пример
2
.7
1
5 – висячая вершина.
7 – изолированная вершина.
3
4
6
5
Теорема 5
Сумма степеней всех вершин графа есть четное число,
равное удвоенному количеству ребер.
Следствие 6
Число вершин нечетной степени в любом графе четно.
Теорема 7
В любом графе обязательно найдутся две вершины,
имеющие одинаковую степень.
Определение 8
Последовательность степеней всех вершин графа
называется степенной последовательностью графа.
Пример
1
G
2
6
3
4
5
(1, 3, 2, 4, 1, 1) или (13, 2, 3, 4) - степенная последовательность графа G.
Пример
По степенной последовательности
(12 ,22 ,32 )
можно построить графы
Задача 1
Доказать, что если в графе с n вершинами (n>2)
ровно две вершины имеют одинаковую степень,
то это не изолированная вершина,
и не вершина степени (n-1).
Решение. Допустим противное.
1) В графе ровно две вершины одинаковой степени, и это
вершины степени 0. Тогда, удалив из графа эти изолированные
вершины, получим граф, степени всех вершин которого
различны, что невозможно по теореме 3.
2) Если же в графе ровно две вершины одинаковой степени, и
это вершины степени (n-1), то перейдя к дополнению , получим
противоречие, аналогично пункту 1).
Задача
•
•
•
•
•
•
•
•
•
•
•
•
Существуют ли графы с данной степенной последовательностью? Ответ
пояснить.
1) (1;2;3;4);
2) (13;22;3;5);
3) (0;1;2;3;42);
4) (12;23;32;4);
5) (12;32;4).
Решение.
1) Не существует, так как все степени различные (смотри теорему 3).
2) Не существует, так как число вершин нечетной степени нечетно, а именно 5
( смотри теорему 2).
3) Не существует(смотри задачу 1).
4) Построим граф, имеющий данную степенную последовательность
5) Не существует, так как, соединив вершину степени 4 с четырьмя из
оставшихся вершин, убеждаемся, что для вершин степени 3 не достаточно
смежных вершин.
Подграфы.
Операции над графами
Определение 1
Пусть дан граф G  (V , E ) . Граф G1  (V1 , E1 ) называется подграфом
(частью графа G), если V1  V , E1  E .
Если при этом V1  V , то такой подграф называется остовным.
Определение 2
Пусть дан граф G  (V , E ) . Подграф G1  (V1 , E1 ) графа G называется порожденным,
если для любых вершин u , v  V (u , v)  E  (u , v)  E .
1
1
Пример
1
1
Граф G
2
Порожденный по дграф графа G
6
7
2
6
3
5
3
5
4
Остовный по дграф графа G
По дграф графа G, не являющийся
ни остовным, ни порожденнным
1
2
2
6
. 6
7
. 7
3 .
. 5
4
5
Определение 3
(u, v) - ребро графа G  (V , E ) .
Граф G( u ,v )  G  (u , v ) получается из графа G в результате у даления ребра (u , v) ,
Пусть
т. е.
V (G( u ,v ) )  V (G ), E (G( u ,v ) )  E (G ) \ (u , v) .
Пример
u
G
v
u
v
G(u,v)
Определение 4
Пусть v - вершина графа G . Граф G( v )  G  v получается из графа G
в результате удаления вершины v и всех инцидентных ей ребер,
т.е. V (G( v ) )  V (G ) \ v, E (G( v ) )  E (G ) \ (v, u ) | u  V (G ) .
Пример
u
G
G(u )
Определение 5
Пусть
u
и
v
- две вершины графа
G  (V , E ) .
Удалим э ти вершины из графа G и добавим новую вершину x ,
соединив ее ребром с каждой вершиной, вхо дящей в объединение
окружений вершин u и v в исхо дном графе G .
Построенный граф получился из графа G отождествлением вершин
u
Отождес твление вершин
(u, v) ,
если
uи v
(u , v)  E (G ) .
называе тся с тягиванием ребра
Пример
1
2
x
3
4
2
3
5
6
4
6
G
G'
x
2
5
4
6
G"
и
v.
Определение 6
Граф G называется стягиваемым к графу G ' , если G ' получается из G
в результате некоторой последовательности стягивания его ребер.
Пример
G
Граф
G
G1
(носящий название графа Петерсена) стягивается к графу
G1 =K5.
Цепи. Циклы
Определение 1
a) Маршрут называется цепью, если все его ребра различны.
b) Маршрут называется простой цепью, если все его вершины,
кроме, возможно, крайних, различны.
Обозначают: Pn – простая цепь длины n.
Определение 2
Цепь, у которой первая и последняя вершины совпадают,
называется циклом.
b) Простая цепь, у которой совпадают первая и последняя вершины,
называется простым циклом. Обозначают: C n – простой цикл длины n.
a)
Пример
2
1
3
4
5
6
7
1,2,3,4,1,3 - цепь, не являющаяся простой.
1,2,3,4,6 - простая цепь.
2,3,5,6,4,3,1,2 - цикл, не являющийся простым.
3,5,6,4,3 - простой цикл.
C 5 – простой цикл.
P6 - простая цепь.
Деревья
Определение 1
Граф без циклов (ациклический) называется лесом.
Определение 2
Связный ациклический граф называется деревом.
Пример
G1
G2
Теорема 3
Пусть G- дерево порядка (n,m). Тогда m=n-1.
Теорема 4
В любом дереве порядка n2 имеется
не менее двух висячих вершин.
Определение 5
Граф G = (V, E) будем называть взвешенным,
если существует функция f: ER,
т.е. каждому ребру графа G поставлено в соответствие
некоторое вещественное число,
которое называется весом (стоимостью, длиной) ребра.
Определение 6
Если остовный подграф некоторого графа является
деревом, то будем называть его остовным деревом или
остовом
Алгоритм Краскала
(алгоритм нахождения во взвешенном графе остова
наибольшего или наименьшего веса ).
Пусть дан связный взвешенный граф G = (V, E), V = n.
Цель: построение дерева Т наименьшего (наибольшего) веса
являющегося остовом графа G.
0 шаг: в качестве искомого берем Т=Оn
1 шаг: выберем в G ребро наименьшего (наибольшего) веса
и добавим его в Т.
i шаг (к тому моменту граф Т содержит уже (i–1) ребро графа G):
выбираем из оставшихся ребер графа G ребро наименьшего
(наибольшего) веса, не образующий циклов с уже выбранными
ребрами, и добавим его в Т.
Критерий останова: алгоритм прекращает свою работу, когда уже
выбрано (n–1) ребро, так как в этом случае добавление любого
оставшегося ребра будет приводить к образованию цикла.
G
Пример
b
2
a
5.2
8
c
12
3
2
f
4
4
2.3
2.3
0. 9
0. 9
d
b
e
G1
23
7

g
a
c
d
e
g
Пример
G
b
2
a
5.2
8
c
12
3
2
4
4
2.3
2.3
d
0. 9
f
0. 9
e
23
7

g
b
a
c
d
e
f
g
G2
Эйлеровы графы.
Гамильтоновы
графы
Эйлеровы графы.
Определение 1
Цикл называется эйлеровым, если он содержит все ребра графа.
Определение 2
Граф называется эйлеровым, если в нем найдется эйлеров цикл.
Пример
Граф “Сабли Магомета” является эйлеровым,
так как в нем есть эйлеров цикл 123475287651.
1
2
5
3
4
7
6
8
Теорема 3
(Эйлера)
Связный граф является эйлеровым тогда и только тогда, когда он не
содержит вершин нечетной степени.
Определение 4
Цепь, содержащая все ребра графа, называется эйлеровой.
Определение 5
Граф, обладающий эйлеровой цепью, называется квазиэйлеровым.
Теорема 6
Граф является квазиэйлеровым, если в нем не более двух
вершин нечетной степени.
Замечание
В квазиэйлеровом графе существующие у него две вершины
нечетной степени всегда будут являться концами любой эйлеровой
цепи.
Пример
2
4
5
3
1
6
G
8
7
Граф G является квазиэйлеровым, так как,
например, цепь 8,1,2,3,4,5,6,3,1,7,3,8,7 - эйлерова.
В графе G ровно две вершины нечетной
степени: 8 и 7.
Гамильтоновы графы.
Определение 1
Цикл называется гамильтоновым, если он проходит через каждую
вершину графа (за исключением крайней) в точности один раз.
Цепь называется гамильтоновой, если она проходит через каждую
вершину графа в точности один раз.
Замечание
Гамильтонов цикл и гамильтонова цепь всегда являются простыми.
Они могут не содержать всех ребер графа.
Определение 2
Граф называется гамильтоновым, если он обладает гамильтоновым
циклом.
Определение 3
Граф называется квазигамильтоновым,
гамильтоновой цепью.
если
он
обладает
Пример
1
2
5
G
2
1
4
3
4
3
Граф K5 является гамильтоновым, так как,
5
например, цикл 1,2,3,4,5 - гамильтонов.
Граф G является квазигамильтоновым,
и не является гамильтоновым.
2,4,3,1,5 - гамильтонова цепь.
Уи́льям Ро́уэн Га́мильтон –
(4 августа 1805 — 2 сентября 1865) —
выдающийся ирландский математик,
механик и физик .
Задача «кругосветного
путешествия» по додекаэдру,
узловые вершины которого
символизировали крупнейшие
города Земли
• Теорема Дирака:Пусть G- неориентированный
граф порядка n ≥3 и k- минимальная степень
его вершин. Если и k≥n/2, то G- гамильтонов
граф.
• Теорема Оре:Если и для любых двух
различных несмежных вершин u и v
неориентированного графа G порядка n ≥3
d(u)+d(v) ≥n, то G - гамильтонов граф.
Download