ОСНОВНЫЕ ТИПЫ ГРАФОВ
Графом называется совокупность, состоящая из конечного множества V точек, называемых вершинами, и множества неупорядоченных пар различных вершин из V, называемых ребрами.
Множество вершин: V = { v1, v2 ,…, vn }. Ребра: ( vi , vj ) или xij , или xk ( k = 1, 2 ,…, m ). X - множество ребер.
G ( V, X ) или G = ( V, X ).
Пусть V = { v1, v2, v3, v4 } , Х = { (v1 ,v2 ), (v1 ,v4 ), (v2 ,v3 ), (v2 ,v4 ) } тогда
диаграмма графа :
Помеченный граф Непомеченные графы с 3 вершинами
v2 v3
v1 v4
ОСНОВНЫЕ ТИПЫ ГРАФОВ - 2
Если x = ( vi , vj ) ребро , то vi и vj – смежные вершины; вершины vi и vj называются инцидентными ребру x, ребро х считается инцидентным вершинам vi и vj.
Если два различных ребра x и y инцидентны одной и той
же вершине, то они наз-ся смежными.
Граф с n вершинами и m ребрами называется ( n, m ) - графом.
( 1, 0 ) граф называется тривиальным.
Граф, в котором вершины могут соединяться более чем одним ребром, называется мультиграфом.
v1 v3
v4 v2
x1 x3
x2
ОРГРАФЫ Орграфом или ориентированным графом наз-ся совокупность, состоящая из конечного множества V точек, называемых вершинами, и множества упорядоченных пар различных вершин из V, называемых дугами. G = ( V, X ) .
Дуги v, u и u, v считаются симметричными дугами. v u
Направленный орграф – орграф без симметричных дуг.
Граф, в котором есть дуги и рёбра, наз-ся смешанным графом.
Граф G = ( V, X ), состоящий только из вершин, наз-ся нуль - графом.
Граф G = ( V, X ), в котором любые две вершины соединены ребром, называется полным. Полный граф с n вершинами обозначают
через Кn . а) б) в) г) К3
ОСНОВНЫЕ ТИПЫ ГРАФОВ
Подграф графа G = ( V, X ) - граф G = ( V, X ), V V , а ребрами - часть ребер графа G, оба конца которых лежат в множестве V. Остовный подграф графа G = ( V, X ) - граф G = ( V, X* ), V = V , X* X . Дополнение графа G = ( V, X ) - граф )X ,V (G , V = V , а X = дополнению Х до множества всех неупорядоченных пар вершин из V. G = ( V, X ) : )X ,V (G : Объединение G1 = ( V1, X1 ) и G2 = ( V2 , X2 ) - граф G ( V1 V2 , X1 X2 ).
G xj G \ xj G
vi G \ vi
ДВУДОЛЬНЫЙ ГРАФ
Граф G = ( V, X ) называется двудольным, если разбиение V на два непересекающихся подмножества V1 и V2 так, что V = V1 V2 и ребро графа G соединяет вершины из разных множеств.
Двудольный граф называется полным двудольным графом, если вершина из V1 соединена ребром с вершиной из V2.
Если |V1| = m и |V2| = n, то полный двудольный граф обоз-ся Km ,n .
Если число ребер графа мало, то в этом случае лучше задать его с помощью списков смежностей вершин.
v4
v3 v1
v2 S ( v1 ) = { v2, v4 }; S ( v2 ) = { v1, v3, v4 }; S ( v3 ) = { v2, v4 }; S ( v4 ) = { v1, v2, v3 }.
v1 v2 v3
v4 v5 v6
u2 u6
u1 u5
u4 u3
ИЗОМОРФИЗМ ГРАФОВ
Графы G1 = ( V1 , X1 ) и G2 = ( V2 , X2 ) наз-ся изоморфными, если между их множествами вершин существует взаимно однозначное соответствие, сохраняющее смежность вершин.
vi ↔ ui Отношение изоморфизма рефлексивно, симметрично и транзитивно, след-но, это отношение эквивалентности и порождает разбиение множества всех графов на классы изоморфных графов.
ЧИСЛО РЕБЕР ГРАФА
Число ребер инцидентных вершине v обозначают deg ( v ) и называют локальной степенью ( степенью вершины ) v .
Число ребер графа равно:
m = ∑n
ii )v( deg
1=2
1. (1)
2 m = ∑n
ii )v( deg
1=. (2)
Теорема. Число ребер графа равно половине суммы локальных степеней его вершин.
Нечетные вершины v, если степени deg ( v ) нечетные, и четные вершины v*, если deg ( v* ) четные.
Теорема. Число нечетных вершин любого графа четно.
deg ( v1 ) = 2 , deg ( v2 ) = 4 , deg ( v3 ) = 2 , deg ( v4 ) = 3 , deg ( v5 ) = 1 , deg ( v6 ) = 0.
v2
v1 v5 v3 v6 v4
РЕГУЛЯРНЫЕ ГРАФЫ, ВИСЯЩИЕ И ИЗОЛИРОВАННЫЕ ВЕРШИНЫ
В ( n, m ) графе для вершины v :
0 deg ( v ) n - 1.
( G ) - минимальная степень вершин графа G , ( G ) - максимальная.
Если ( G ) = ( G ) = r, то граф G наз-ся регулярным или однородным степени r и пишут deg ( G ) = r.
v- изолированная вершина
v – висящая вершина
ЧИСЛО ДУГ ОРГРАФА
Дуга x называется инцидентной вершине v, если она заходит в эту вершину или исходит из нее.
Для орграфа G для вершины v вводятся deg + ( v ) и deg - ( v ), равные соответственно числу входящих и выходящих дуг для v. Эти числа называются полустепенями захода и исхода вершины v.
Число дуг орграфа: m = Viv
deg - ( vi ) = Viv
deg + ( vi ).
Ориентированный граф называется однородным степени r, если для
v, v V: deg - ( v ) = deg + ( v ) = r.
deg + ( v1 ) = 0 , deg - ( v1 ) = 2 , deg + ( v2 ) = 3 , deg - ( v2 ) = 1 , deg + ( v3 ) = 1 , deg - ( v3 ) = 1 , deg + ( v4 ) = 2 , deg - ( v4 ) = 1 , deg + ( v5 ) = 0 , deg - ( v5 ) = 1 , deg + ( v6 ) = 0 , deg - ( v6 ) = 0 .
v2 v1
v4
v5 v3 v6
ЦЕПИ И ЦИКЛЫ
Цепь в графе G : v0 , х1 , v1 , х2 , v2 ,…, vn-1 , хn , vn ,…, в которой каждое ребро хi есть ( vi-1 , vi ).
Если v0 - начальная вершина цепи, vn конечная вершина, тогда Z = Z ( v0 , vk ).
Нуль-цепь – цепь, не содержащая никаких ребер.
Нетривиальная цепь – это цепь, содержащая хотя бы одно ребро.
Простая цепь – это цепь, все вершины которой, кроме быть может, первой и последней, различны и все ребра различны.
Вершина u графа G называется достижимой из вершины v, если цепь Z ( v, u ), соединяющая эти вершины.
Если vk = v0 , то цепь называется циклической или замкнутой.
Замкнутая цепь наз-ся простым циклом, если все его n вершин различны и n 3.
ПУТИ И КОНТУРЫ В ОРГРАФЕ Путь в орграфе: v0 , х1 , v1 , х2 , v2 ,…, vk-1 , хk , vk ,…,
в которой каждая дуга хi есть vi-1 , vi . Каждый путь ориентирован от начальной вершины к последующей.
Простой путь в орграфе – это путь, все вершины которого, кроме быть может, первой и последней, попарно различны.
Замкнутый путь это путь такой, что v0 = vk .
Контур – нетривиальный замкнутый путь, у которого все вершины различны за исключением первой и последней.
Если в орграфе G существует путь из вершины v в вершину u, то считается, что u достижима из v.
В графе G ( V, X ) каждому ребру х = ( v, u ) может приписываться число ( v, u ), которое называется длиной или весом ребра.
Граф, для каждого ребра которого определена длина (вес), называется взвешенным графом.
СВЯЗНОСТЬ ГРАФА. КОМПОНЕНТЫ СВЯЗНОСТИ
Вершины v и u наз-ся связанными, если цепь Z ( v, u ). Граф называется связным, если пара вершин связана. Отношение связанности обладает свойствами симметричности, транзитивности и рефлексивности, сл-но, является отношением эквивалентности. Тогда множество V вершин графа разбивается единственным образом на попарно не пересекающиеся подмножества
Vi , V = i
iV и : G = i
i ) V ( G , где G ( Vi ) - компоненты связности
или компоненты.
Теорема. Каждый граф представляется единственным образом как объединение своих компонент связности.
Теорема. Если в графе G ровно две вершины v и u имеют нечетную локальную степень, то эти вершины связанные.
Граф с двумя компонентами.
Граф с шестью компонентами.
Связный граф
МАТРИЦА СМЕЖНОСТИ
Матрицей смежности графа, мультиграфа или псевдографа G с данной нумерацией вершин v1 , v2 ,…, vn наз-ся n n матрица A = ( aij ) в которой aij равен числу ребер в G, соединяющих vi c vj .
0110
1010
1101
0010
A
2443
2
4
4
3
0110
1021
1201
0111
A
v1
v2
v3
v4
v2
v1
v3
v4
МАТРИЦА СМЕЖНОСТИ ОРГРАФА Для орграфа G матрица смежности есть n n матрица А = ( aij ), где aij – число дуг, идущих из vi в vj .
1310
1
0
1
3
0100
0000
0100
1110
A
Сумма элементов i – й строки матрицы равна полустепени исхода i – й вершины орграфа, а сумма элементов j – го столбца – полустепени захода j – й вершины.
Матрица смежности А орграфа не является симметричной.
v1
v2
v3
v4
ОПЕРАЦИИ НАД МАТРИЦАМИ СМЕЖНОСТЕЙ 1. Умножению матрицы смежности А на целое число соответствует тому, что в графе каждое ребро заменяется ребрами. 2. Сложение.
Теорема. Пусть матрице A соответствует граф G1 = ( V, X1 ), а матрице B – граф G2 = ( V, X2 ). Тогда матрице А + В соответствует граф, полученный объединением ребер (дуг) графов G1 и G2 на том же множестве вершин V.
3. Умножение.
Теорема. Пусть матрице A соответствует граф G1 = ( V, X1 ), а матрице B – граф G2 = ( V, X2 ). Тогда матрице А В отвечает мультиграф, построенный следующим образом: вершины vi и vj соединяет столько ребер, сколько существует различных цепей из vi в vj, составленных из двух ребер, первое из которых принадлежит графу G1 , а второе G2.
ОПЕРАЦИИ НАД МАТРИЦАМИ СМЕЖНОСТЕЙ - 2
Теорема. Пусть матрице Ai соответствует граф Gi = ( V, Xi ), 1 i N. Тогда матрице А = А1 А2 … АN отвечает мультиграф, построенный следующим образом: вершины vi и vj соединены стольким числом ребер, сколько существует цепей из vi в vj, составленных из N ребер, первое из которых принадлежит G1 , второе - G2 и т.д., N - е – GN.
Следствие 1. Если А r = 0, то в графе, соответствующем матрице А, нет цепи длины r.
Следствие 2. Если G – связный граф с матрицей смежности А, то расстояние между vi и vj для i j равно наименьшему из целых чисел r, для которых ( i, j ) - ый элемент матрицы А r отличен от нуля.
Следствие 3. Пусть G - граф с матрицей смежности А. Тогда ( i, j ) - й элемент матрицы A r равен числу цепей длины r из vi в vj .
ПРИМЕР ИСПОЛЬЗОВАНИЯ МАТРИЦЫ СМЕЖНОСТЕЙ
Пусть имеем граф G1 : Матрица смежности А1 :
А1 =
010
101
011
и элемент а13 = 0.
Вычислим
010
101
011
010
101
01121 A =
101
021
112
. Элемент а13 матрицы 21А равен 1, след-но, d (v1 , v3 ) = 2.
v2 v1 v3 б) в)
ПРИМЕР ИСПОЛЬЗОВАНИЯ МАТРИЦЫ СМЕЖНОСТЕЙ - 2
А2 =
0100
1010
0101
0010
. 22A =
0100
1010
0101
0010
0100
1010
0101
0010
=
=
1010
0201
1020
0101
. Для 22A ( 1, 4 ) – й элемент равен 0,
поэтому вычисляем 32A =
1010
0201
1020
0101
0100
1010
0101
0010
=
0201
2030
0302
1020
.
Для 3
2A ( 1, 4 ) – й элемент равен 1, след-но, d (v1 , v4 ) = 3 и имеется
ровно одна цепь длины 3, ибо ( 1, 4 ) - й элемент матрицы 32A равен 1.
v2 v1 v3 v4
ПРИМЕР ИСПОЛЬЗОВАНИЯ МАТРИЦЫ СМЕЖНОСТЕЙ - 3
Матрица смежности : А =
0101
1010
0101
1010
.
А2 =
2020
0202
2020
0202
, А3 =
0404
4040
0404
4040
. По матрице А2 можно
определить, что из v1 до v3 имеется две цепи длины 2:
v1 - v2 - v3 и v1 - v4 - v3.
По матрице А3 можно определить, что из v1 до v2 имеется четыре цепи длины 3:
v1 – v4 - v3 – v2 , v1 – v2 - v3 – v2 , v1 – v2 – v1 – v2 , v1 – v4 – v1 – v2 .
v1 v2 v3 v4
КРИТЕРИЙ ИЗОМОРФИЗМА ГРАФОВ
Теорема ( критерий изоморфизма графов ). Графы G = ( V, X ) и G =( V, X ) с матрицами смежностей ( ai j ) и ( ai j ) соответственно изоморфны тогда и только тогда, когда: 1) число вершин в V и V совпадает ( и равны, например, n ); 2) существует такое взаимно однозначное соответствие множества { 1, 2,…, n } на себя, что ai j = а ( i ) ( j ) .
Количество взаимно однозначных отображений мн-ва { 1, 2 ,…, n } на себя равно числу перестановок, т.е. равно n! ( 6! = 720 ).
Построение графа соответствия для данных орграфов G и G.
v1 v2 v3
v4 v5 v6
u5
u1
u6
u2
u4 u3
(1,2) v1
(2,1) v2
(3,0) v3
(0,3) v4
(1,2) v5
(2,1) v6
u1(1,2)
u2(1,2)
u3(3,0)
u4 0,3)
u5(2,1)
u6 2,1)
ПОСТРОЕНИЕ ГРАФА СООТВЕТСТВИЯ
1)
i
i
u
v
614352
654321;
2) 524361
654321;
3) 514362
654321;
4) 624351
654321.
При отображении 1) : а51 = 1, но а’12 = 0, поэтому 1) не изоморфизм. При отображении 2) : а25 = 1, но а’62 = 0, следовательно, тоже не
выполнено условие 2) теоремы 5.8 и 2) не изоморфизм. При отображении 3) : а51 = 1, но а’12 = 0, следовательно, 3) не
изоморфизм.
ПОСТРОЕНИЕ ГРАФА СООТВЕТСТВИЯ - 2
Отображение 4 ): 624351
654321
010001
001010
000000
101010
000001
001000
000011
000001
000000
111000
011000
001000
)а(А ,)а(А ijij
Последовательно имеем:
а14 = 1, а(1) (4) = а14 = 1, а24 = 1, а(2) (4) = а54 = 1, а25 = 1, а(2) (5) = а52 = 1. …
Отображение 4 ) является изоморфизмом данных графов.
v1
v2
v3
v4
x1 x2
x3
МАТРИЦА ИНЦИДЕНЦИЙ
Пусть G = ( V, X ) - граф с V = { v1 , v2 ,…, vn } и X = { x1 , x2 ,…, xm }. Графу G ставим в соответствие матрицу инциденций А = ( ai j ) размером n m, ( i, j ) – й элемент которой равен:
0
1=
,
, аij
010
100
011
101321
4
3
2
1
xxx
v
v
vv
А
Каждая строка матрицы А равна сумме по модулю 2 всех остальных строк.
если i - я вершина инцидентна j - му ребру,
если i - я вершина не инцидентна j - му ребру.
МАТРИЦА ИНЦИДЕНЦИЙ
Пусть граф состоит из трёх компонент связности.
Теорема. Ранг матрицы инциденций p - компонентного графа с n вершинами равен n - p при условии, что арифметические операции производятся по модулю 2.
А =
011000
110000
101000
000100
000100
000010
000011
000001
8
7
6
5
4
3
2
11
x x x x x x
v
v
v
v
v
v
vv
65432
.
v1 x1 v2
x2
v3
v4
v5
x3
x5
x4 x6
v8 v7
v6
МАТРИЦА ИНЦИДЕНЦИЙ ОРГРАФА
Матрица инциденций орграфа с n вершинами и m дугами это n m матрица, ( i, j ) – й элемент которой равен:
1
=
, 0
, 1-
,
а ji
А =
11000
10100
01111
00011
4
3
2
1
54321
v
v
v
v
xxxxx
Для орграфа ранг А тоже равен n - p.
v2 x3 v3 x2 x1 x4 x5
v1 v4
если из i – й вершины исходит j - я дуга,
если в i – ю вершину входит j - я дуга,
если i – я вершина не инцидентна j - й дуге.
ДЕРЕВЬЯ
Связный граф без циклов наз-ся деревом. Граф без циклов наз-ся ациклическим, или лесом.
Теорема.
1. В дереве любые две вершины соединены единственной простой цепью.
2. Число ребер у дерева с n вершинами равно n - 1. 3. Число различных помеченных деревьев, которые можно
построить на n вершинах, равно nn-2. 4. В любом нетривиальном дереве имеются, по крайней мере, две
висячие вершины. Корневое дерево, обход графа по глубине, по ширине.
ЗАДАЧА О МИНИМАЛЬНОМ СОЕДИНЕНИИ
G ( V, X ) - связный взвешенный граф, для ребра u = ( v, u ) определен вес ( длина ) ( v, u ). Требуется построить остовный подграф ( дерево ) Т чтобы его мера
( T ) = T)u,v( ( v, u ) была минимальной.
Алгоритм Краскала ( Kruskal ). Вход: список Х ребер графа G с их длинами. Выход: множество Т ребер кратчайшего остова.
begin Т := . Упорядочить Х в порядке возрастания длин k := 1 {номер рассматриваемого ребра} for i from 1 to m - 1 do while добавление ребра Е(k) образует цикл в Т do k:=k+1 {пропустить это ребро} end while T:=T {E(k)} {добавить это ребро в T} end
Сложность алгоритма Краскала 0 ( m log2 m ), где m – число ребер. Время работы алгоритма Дейкстры - Прима зависит от того, как организована очередь и равна 0 ( m log2 m ) либо 0 ( m + n log2 n ).
ЗАДАЧА О МИНИМАЛЬНОМ СОЕДИНЕНИИ - 2
Пусть 4 города расположены в вершинах квадрата с единичной стороной.
1. Если граф имеет ребрами только стороны квадрата, то ( Т ) = 3.
2. Введем новую вершину на пересечении диагоналей квадрата.
Тогда ( Т ) = 2 2 = 2,828.
3. Если ввести две новые вершины, то ( Т ) = 2,732.
v1 v2 v1 v2 v1 v2
v3 v4 v3 v4 v3 v4
1200 1200
ЦЕНТР ДЕРЕВА
Эксцентриситет вершины v :
е ( v ) : е ( v ) = Gu
max
d ( v, u ).
Диаметр графа G : d ( G ) = Gu,v
max
d ( v, u ).
Радиус графа G : r ( G ) = Gu
min
e ( u ).
Вершина v центральная вершина графа G, если e ( v ) = r ( G ).
Центр графа G – это множество всех центральных вершин.
Теорема. Каждое дерево имеет центр, состоящий или из одной вершины, или из двух смежных вершин.
u
v
v u
ОРИЕНТИРОВАННЫЕ ДЕРЕВЬЯ
Ориентированным деревом ( или ордеревом, или корневым деревом ) называется орграф со следующими свойствами:
1) существует единственная вершина, полустепень захода которой равна 0. Она называется корнем ордерева;
2) полустепень захода всех остальных вершин равна 1;
3) каждая вершина достижима из корня.
ОРИЕНТИРОВАННЫЕ ДЕРЕВЬЯ - 2
Теорема. Ордерево обладает следующими свойствами:
1) m = n – 1;
2) если в ордереве отменить ориентацию ребер, то получится дерево;
3) в ордереве нет контуров;
4) для каждой вершины существует единственный путь, ведущий в эту вершину из корня;
5) подграф, определяемый множеством вершин, достижимых из некоторой вершины v данного ордерева, является ордеревом с корнем v (это ордерево называется поддеревом вершины v );
6) если в свободном дереве любую вершину назначить корнем и ввести ориентацию ребер от корня к концевым вершинам, то получится ордерево.
ОРИЕНТИРОВАННЫЕ ДЕРЕВЬЯ – 3
Лист, ветвь, высота ветви, уровень вершины, ярус дерева. «Генеалогическая» терминология:
Если k > j , то vk потомок вершины vj , а vj предок для vk ; Если u и v - смежные вершины, то u называют отцом ( родителем )
для v, а v - сыном ( дитём ) для u. Бинарное, бинарное полное дерево.
v0 - корень 0 - ой ярус v1 1 - ый ярус
v2 2 - ой ярус v3 3 - ий ярус v4
ЭЙЛЕРОВЫ ГРАФЫ
Цикл С, содержащий все ребра графа, причем каждое ребро в точности по одному разу наз-ся эйлеровым циклом, а граф, обладающий эйлеровым циклом – эйлеровым графом.
Теорема. Конечный граф G является эйлеровым графом тогда и только тогда, когда: 1) G связен; 2) все его локальные степени четны.
D
А С В
u v
ПОСТРОЕНИЕ ЭЙЛЕРОВОГО ЦИКЛА
Строим цикл С и если надо цикл С* . Тогда: С1 = S ( v, u ) С* S ( v, u ) Если С1 не является эйлеровым циклом, то построение продолжается.
Теорема. Для того чтобы на связном графе имелась цепь S ( v, u ), содержащая все его ребра в точности по одному разу, необходимо и достаточно, чтобы v и u были единственными вершинами нечетной степени для этого графа.
Теорема. На любом связном графе с 2k нечетными вершинами имеется семейство из k цепей, которые в совокупности содержат все ребра графа в точности по одному разу.
ГАМИЛЬТОНОВЫ ГРАФЫ
Цикл называется гамильтоновым, если он проходит через каждую вершину графа один и только один раз.
Гамильтоновым графом называется граф, содержащий гамильтонов цикл.
Гамильтоновой цепью в графе называется простая цепь, проходящая через каждую вершину графа один и только один раз.
Пусть d i = deg ( vi ), i = 1, 2 ,…, n.
Теорема ( Хватал, 1972 г.). Пусть граф G имеет n вершин v1 , v2 , …, vn , d1 d2 … dn и n 3. Если для любого k верна импликация
dk k < n / 2 dn-k n - k, то граф G гамильтонов.
ГАМИЛЬТОНОВЫ ГРАФЫ - 2 Следствие. Пусть граф G имеет n вершин v1 , v2 , …, vn , d1 d2 … dn и n 3. Граф G гамильтонов, если выполнено одно из условий:
1) dk n / 2 для любого k = 1, 2,…, n ( теорема Дирака, 1952 );
2) deg ( u ) + deg ( v ) n для любых двух различных несмежных вершин u и v графа G ( теорема Оре, 1960 );
3) dk k для любого натурального числа k такого, что 1 k n /2.
Орцикл орграфа, проходящий через каждую его вершину, называется гамильтоновым орциклом. Орграф называется гамильтоновым, если он обладает гамильтоновым орциклом.
Теорема ( Гуйя – Ури ). Пусть G – орсвязный граф с n вершинами. Если deg+ ( v ) n / 2 и deg - ( v ) n / 2 для любой его вершины v, то G - гамильтонов орграф.
ПЛАНАРНЫЕ ГРАФЫ
ПЛАНАРНЫЕ ГРАФЫ - 3
Плоским графом называется граф, изображенный на плоскости так, что никакие два его ребра не пересекаются нигде, кроме инцидентной им обоим вершины .
Граф изоморфный плоскому графу, наз-ся планарным графом.
К5 – полный граф с пятью вершинами .
К3,3 – полный двудольный граф с шестью вершинами.
Теорема. Графы К5 и К3,3 непланарны.
v1 v6 v5
v2 v3 v4
v1 v5 v2 v4 v3
ПЛАНАРНЫЕ ГРАФЫ - 4
Два графа гомеоморфны, если они могут быть получены из одного и того же графа включением в его ребра новых вершин степени 2.
Теорема ( теорема Куратовского – Понтрягина ). Граф планарен тогда и только тогда, когда он не содержит подграфа, гомеоморфного К5 или К3,3.
Операция включения в ребра графа новых вершин со степенями 2 называется расширением графа.
ПЛАНАРНЫЕ ГРАФЫ - 5
Определим операцию стягивания графа.
Теорема ( Вагнер, Харари, Татт ). Граф планарен тогда и только тогда, когда он не содержит подграфов, стягиваемых к К5 или к К3,3.
v x u v=u q q t
s t s G1
*G1
v
v=u u
G2 *G2
ЗАДАЧА О КРАТЧАЙШЕЙ ЦЕПИ МЕЖДУ ПРОИЗВОЛЬНЫМИ ВЕРШИНАМИ ГРАФА
Дан взвешенный связный граф G ( V, X ). Каждому ребру х приписан его вес ( длина ) ( х ). Требуется для произвольных вершин v и u графа G найти цепь Z ( v, u ) наименьшей длины.
1 – ый этап : нахождение длины кратчайшей цепи. Пусть v = v0 , u = v 7 .
v1 12 v2 3 v0 2 3 2 v3 7 v 7 4 8 4 3 v4 3 5 v6 v5
0
2
3
5
7
10
8
11
ЗАДАЧА О КРАТЧАЙШЕЙ ЦЕПИ МЕЖДУ ПРОИЗВОЛЬНЫМИ ВЕРШИНАМИ ГРАФА
Пусть длина кратчайшей цепи найдена ( в примере равна 10 ).
2 – ой этап : нахождение кратчайшей цепи :
v1 12 v2 3 v0 2 3 2 v3 7 v7 4 8 4 3 v4 3 5 v6 v5
0
2
3
5
7
10
8
11
ПОТОКИ В СЕТЯХ
Сетью ( транспортной сетью ) S называется орграф, если:
1) существует единственная вершина v0 , называемая входом или источником, в которую не заходит ни одна дуга;
2) существует единственная вершина vk , называемая выходом или стоком, из которой не исходит никакая дуга;
3) каждой дуге х поставлено в соответствие неотрицательное действительное число ( х ), называемое пропускной способностью дуги.
Вершины в S, отличные от источника и стока, называются промежуточными.
ПОТОКИ В СЕТЯХ - 2
Потоком в сети называется действительнозначная функция , определенная на множестве дуг графа и удовлетворяющая свойствам:
1) для любой дуги х, ( х ) 0;
2) ( х ) ( х ) – поток по любой дуге х не превосходит ее пропускной способности;
3) для любой промежуточной вершины v выполняется равенство:
vUx vUx
)x()x( 0 , где vv U ,U - множество дуг
графа, соответственно заходящих в промежуточную вершину v и выходящих из нее.
Дуга называется насыщенной, если поток по ней равен её пропускной способности.
ПОТОКИ В СЕТЯХ - 3
Притоком на выходе vk сети называется величина kvUx
kv )x( .
Пусть A V - такое подмножество вершин сети, что v0 A, vk A. Разрезом сети
AU относительно множества вершин А называют множество дуг, исходящих из вершин, не принадлежащих А, и заходящих в вершины А.
Пропускной способностью разреза AU называют число
AUxA )x()U( , равное сумме пропускных способностей дуг разреза
AU .
Разрез с минимальной пропускной способностью называется минимальным разрезом.
Поток в сети называется максимальным, если его величина принимает максимальное значение по сравнению с другими допустимыми потоками в данной сети.
Теорема. Для любой (транспортной) сети величина максимального потока равна наименьшей пропускной способности разрезов.
АЛГОРИТМ НАХОЖДЕНИЯ МАКСИМАЛЬНОГО ПОТОКА Пусть поток в сети и пропускные способности дуг принимают целочисленные значения.
Шаг 1. Полагаем, что начальный поток равен нулю, т. е. для любой дуги х сети ( х ) = 0. Полагаем S* = S.
Шаг 2. Удаляем из орграфа S* все дуги, являющиеся насыщенными при потоке в сети S*. Полученный орграф вновь обозначим через S*.
Шаг 3. Ищем в S* простой путь Z ( v0 , vk ) из v0 в vk . Если такого пути нет, то - искомый поток в сети S. Иначе идем к следующему шагу.
Шаг 4. Увеличиваем поток ( х ) на каждой дуге х из Z ( v0 , vk ) на одинаковую величину а, a > 0, такую, что, по крайней мере, одна дуга из Z ( v0 , vk ) оказывается насыщенной, а потоки по остальным дугам из Z ( v0 , vk ) не превышают их пропускных способностей. При этом величина потока также увеличивается на а и поток остается в S допустимым. После этого переходим к шагу 2.