Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Diskretnaya_matematika.pdf
Скачиваний:
1262
Добавлен:
12.03.2015
Размер:
2.47 Mб
Скачать

128

Длиной конечной цепи Z(v, u), соединяющей вершины v и u, считается число ребер в Z(v, u). Длиной конечного пути Р(v, u) из вершины v до вершины u, считается число дуг в Р(v, u).

Расстоянием d(v,u) между вершинами v и u графа G называется длина кратчайшей простой цепи, соединяющей их, если же вершины v и u не соединены, то полагаем d(v,u)=. Расстоянием d(v,u) между вершинами v и u орграфа, считается длина кратчайшего простого пути, идущего из вершины v до вершины u; если вершина u недостижима из v, то полагаем d(v,u)=.

Внекоторых графах вводят веса или длины ребер и дуг.

Вграфе G(V,X) каждому ребру х=(v,u) может приписываться число

(v,u), которое называется длиной или весом ребра. В орграфе G(V,X) каждой дуге x= v,u может приписываться число (v,u), которое называется длиной

или весом дуги.

Граф (орграф), для каждого ребра (дуги) которого определена длина, называется взвешенным графом (орграфом).

Для взвешенного графа длиной конечной цепи Z(v, u), соединяющей вершины v и u, считается сумма длин всех ребер из Z(v, u). Для взвешенного орграфа длиной конечного пути Р(v, u) из вершины v до вершины u, считается сумма длин всех дуг из Р(v, u).

Расстоянием d(v,u) между вершинами v и u взвешенного графа (орграфа) G называется длина кратчайшей простой цепи (кратчайшего простого пути), идущей (идущего) из вершины v до вершины u; если же вершина u не достижима из v, то полагаем d(v,u)=.

§ 5. Связность графа. Компоненты связности

Пусть G – неориентированный граф.

Две вершины v и u называются связанными, если существуют цепь Z(v,u) с концами v и u. Если цепь Z(v,u) проходит через какую-нибудь вершину w более одного раза, то ясно, что можно удалить циклический участок, при этом останется простая цепь, соединяющая v и u.

Граф называется связным, если любая пара вершин связана (соединена простой цепью). Ясно, что связность графа G означает, что любые две его вершины являются достижимыми одна из другой.

Если в графе G вершина v связана с вершиной u, то, очевидно, что u связана с v. Также очевидно, что если вершина v связана с u, а u с w, то v связана с w. Кроме того, можно считать, что v связана с v. Таким образом, отношение связанности для вершин графа обладает свойствами симметричности, транзитивности и рефлексивности, следовательно, является отношением эквивалентности. Тогда множество V вершин графа разбивается единственным образом на попарно не пересекающиеся подмножества Vi и V= UVi . Все вершины в каждом Vi связанные, а вершины из различных Vi не

i

129

являются связанными между собой. Таким образом, исходный граф можно представить в виде объединения связных подграфов:

G= UG(Vi ) ,

i

где G(Vi) - непересекающиеся связные подграфы данного графа, которые называются компонентами связности или просто компонентой графа G.

Ясно, что компонента связности графа G – это его максимальный связный подграф. Таким образом, мы имеем.

Теорема 5.3. Каждый (неориентированный) граф представляется единственным образом как объединение своих компонент связности.

Эта теорема позволяет сводить большинство задач, касающихся графов, к случаю связных графов.

Пусть G = (V,X) – граф. Для определения числа r компонент можно использовать следующий алгоритм:

begin

V’:=V; r:= 0;

while V’do begin

Выбрать u V’;

Найти все вершины, соединённые цепями с u;

Удалить вершину u из V’ и соответствующие рёбра из Х; r:= r+1;

end

end

Теорема 5.4. Если в графе G ровно две вершины v и u имеют нечетную локальную степень, то эти вершины связанные.

Доказательство. Представим G= UG(Vi ) , где G(Vi ) – компонента.

i

Пусть v G(Vk ). По доказанной ранее теореме каждый граф имеет четное число вершин нечетной степени. Так как это свойство должно выполняется и для G(Vk ), то u должно принадлежать G(Vk ), следовательно, v и u являются вершинами связного графа, поэтому они связаны.

На рис. 5.10 приведены графы с двумя и с шестью компонентами связности (компонентами).

Ориентированный граф называется связным, если для любых двух его вершин v и u вершина u достижима из вершины v или вершина v достижима из вершины u.

130

Граф с двумя

Граф с шестью

компонентами.

компонентами.

 

Рис. 5.10

Компонентой связности (компонентой) ориентированного графа

называется его максимальный связный подграф.

Вам поклоняюсь, вас желаю, числа! Свободные, бесплотные, как тени,

Вы радугой связующей повисли К раздумьям с вершины вдохновенья!

В. Брюсов

§ 6. Матрица смежности

Пусть дан граф G с n вершинами v1,v2,…,vn. Матрицей смежности графа, мультиграфа или псевдографа G с данной нумерацией вершин v1, v2,…, vn называется матрица A=(aij) размером n× n, в которой элемент aij равен числу ребер в G, соединяющих vi c vj. На рис. 5.11 приведены графы, а справа - их матрицы смежности.

 

 

v2

 

 

0

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

1

1

 

 

 

 

 

 

 

 

 

v3

A =

1

0

 

 

 

 

 

v1

 

 

 

 

0

1

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

0

0

v4

 

 

v2

 

 

 

 

1

1

1

0

= 3

v1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

v4

A

=

1

0

2

1

4

 

 

 

 

 

2

0

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

 

 

 

 

 

 

 

1

1

 

2

 

 

 

 

 

 

 

0

0

= 3 4 4 2 v3

Рис. 5.11

131

При другой нумерации вершин получим другую матрицу, получающуюся из А перестановкой строк и столбцов. Но в результате всегда получится симметричная матрица из неотрицательных целых чисел, обладающая тем свойством, что сумма чисел в любой i-й строке или i-м столбце равна локальной степени соответствующей вершины vi, 1≤ i≤ n. Здесь каждая петля учитывается в степени вершины только один раз.

Обратно, по любой заданной симметричной матрице А из неотрицательных целых чисел легко построить граф (единственный с точностью до изоморфизма), матрицей смежности которого будет матрица А.

Таким образом, вместо графов можно исследовать матрицы смежности либо наоборот.

Для орграфа G матрица смежности есть n×n матрица А =(aij), где aij – число дуг, идущих из vi в vj.

На рис. 5.12 приведён пример орграфа, а справа от него построена матрица смежности этого орграфа.

 

 

0

1

1

1 = 3

 

v2

 

0

1

 

1

 

A =

0

0

 

 

 

 

 

 

v3

 

 

 

 

 

0

0

0

0

0

v1

 

 

0

1

 

1

 

 

0

0

v4

=

0

1

3

1

 

 

 

 

 

 

 

Рис. 5.12

 

 

 

 

 

 

Сумма элементов по i–й строке матрицы равна полустепени исхода i–й вершины орграфа, а сумма элементов по j–му столбцу – полустепени захода j–й вершины.

Легко видеть, что матрица смежности А орграфа уже не является симметричной матрицей. Но это - матрица целых неотрицательных чисел и для любой такой матрицы А можно построить граф (с точностью до изоморфизма), матрица смежности которого равна А.

В результате видим, что исследование графов равносильно исследованию матриц смежностей, составленных из целых неотрицательных чисел.

Выясним, каким операциям над графами соответствуют операции над матрицами смежностей.

1.Умножению матрицы смежности А на целое число α соответствует тому, что в графе каждое ребро заменяется α ребрами.

2.При сложение матриц смежностей А+В (одного и того же порядка

n×n) имеет место следующая теорема.

132

Теорема 5.5. Пусть матрице A соответствует граф G1 = (V,X1), а матрице B – граф G2 = (V,X2). Тогда матрице А+В соответствует граф, полученный объединением ребер (дуг) графов G1 и G2 на том же множестве вершин V.

Доказательство. Если A=(aij), В=(bij), то А+В=(aij+bij), следовательно, у графа, соответствующего матрице А+В, вершины vi и vj соединяет aij+bij ребер (дуг из vi в vj), что получается, если к ребрам (дугам) графа G1 добавить ребра (дуги) графа G2. Теорема доказана.

3. Умножение матриц смежностей.

Теорема 5.6. Пусть матрице A соответствует граф G1 = (V,X1), а матрице B – граф G2 = (V,X2). Тогда матрице А×В отвечает мультиграф, построенный следующим образом: вершины vi и vj соединяет столько ребер, сколько существует различных цепей из vi в vj, составленных из двух ребер, первое из которых принадлежит графу G1, а второе G2.

Доказательство. Пусть A=(aij), В=(bij) и им соответствуют графы G1 и G2 соответственно.

По определению матрицы смежности число различных цепей вида

[vi,vk,vj], где (vi,vk) G1, (vk,vj) G2 равно аikbkj. Общее число цепей из vi в vj, составленных из двух ребер (первая из G1, а вторая G2), получается суммированием по всем k:

n

aik bkj , k =1

что и дает (ij)-элемент матрицы А×В.

Эту теорему можно обобщить и на случай произведения любого конечного числа матриц.

Теорема 5.7. Пусть матрице Ai соответствует граф Gi = (V,Xi), 1≤ i≤ N. Тогда матрице А=А1×А2×…×АN отвечает мультиграф, построенный следующим образом: вершины vi и vj соединены стольким числом ребер, сколько существует цепей из vi в vj, составленных из N ребер, первое из которых принадлежит G1 , второе - G2 и т.д., N-е – GN.

Следствие 5.1. Если Аr= 0, то в графе, соответствующем матрице А, нет цепи длины r.

Следствие 5.2. Если G – связный граф с матрицей смежности А, то расстояние между vi и vj для i ≠ j равно наименьшему из целых чисел r, для которых (i,j)-ый элемент матрицы Аr отличен от нуля.

Следствие 5.3. Пусть G - помеченный граф с матрицей смежности А. Тогда (i,j)-й элемент матрицы Ar равен числу цепей длины r из vi в vj.

133

Это следствие позволяет просто (алгоритмически) определить число цепей заданной длины, соединяющих вершины vi и vj.

Рассмотрим примеры. Пусть имеем граф G1, диаграмма которого представлена на рис. 5.13, а). Матрица смежности А1 этого графа равна:

 

 

v2

 

v2

 

 

 

v1

 

 

 

v2

 

v1

v3

v1

v3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

v4

 

 

 

v4

 

 

 

 

v3

 

 

а)

 

б)

 

 

 

 

 

в)

 

 

 

 

 

 

 

Рис. 5.13

 

 

 

 

 

 

 

 

 

 

1 1 0

 

 

 

 

1

1

0

 

1

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А1 = 1 0 1

и элемент а13 = 0. Вычислим A12

=

1

0

1

×

1

0

 

1 =

 

0 1 0

 

 

 

 

0

1

 

 

 

0

1

 

 

 

 

 

 

 

0

 

 

0

 

2

1

1

 

 

 

 

 

 

= 1

2

0

. Элемент а13 полученной матрицы равен единице (больше нуля),

 

1

0

1

 

 

 

следовательно, расстояние между 1-й и 3-й вершинами графа G1 равно 2 (минимальной степени матрицы А1, при котором (1,3)-й её элемент отличен от нуля). Более того, имеется ровно одна цепь длины 2, ибо (1,3)-й её элемент равен единице.

Рассмотрим граф G2, диаграмма которого представлена на рис. 5.13, б) и, используя матрицу смежности, выясним, чему равно расстояние между 1-й и 4-й вершинами графа G2. Матрица смежности А2 графа G2 равна:

 

 

 

0 1 0

0

 

 

 

 

 

0

1

0

0

0

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

А2

 

=

1 0 1

0

.

Вычислим A

2

=

 

1

0

1

0

×

 

1

0

1

0

=

 

0 1 0

1

 

 

0

1

0

1

 

0

1

0

1

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0

1

 

 

 

0

0

1

 

 

 

 

 

0 0 1

0

 

 

 

 

 

0

0

 

1

 

0

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

2

0

1

 

 

полученной матрицы

(1,4)–й

элемент

равен

 

нулю,

=

1

 

0

2

0

. Для

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]