Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

9398

.pdf
Скачиваний:
0
Добавлен:
25.11.2023
Размер:
2.62 Mб
Скачать

что в графе на рис. 64.3,б вершины v4 и v1, а также v4 и v2 соединены не одним, а двумя ребрами. Графы, в которых им еются вершины, соединенные между собой несколькими ребрами, называются мультиграфами.). И теперь вопрос Канта стал звучать так: можно ли из произвольной верши ны графа обойти все ребра ровно по одному разу и вернуться в исходну ю вершину? Ответ, который получил Эйлер, будет сформулирован ниже.

Рис. 64.3

Алгебраически произвольный граф можно представить в виде совокупности G двух множеств V и E (записывается G={V, E}), где

V ={v1,v2,...,vn} есть множество вершин графа, а E есть множество дуг или

множество ребер в

зависимости от того ориентиров анный,

граф или

неориентированный. В первом случае каждая дуга из множества E

задается

в виде

упорядоченной пары (vi ,vj ), где

vi есть

начальная

вершина дуги, а v j е сть ее конечная вершина.

Во второ м случае каждое

ребро из множества E задается в виде пары (vi ,vj ),

в которой (i j).

Для ориентированн ых (нериентированных)

мульти графов

каждая

дуга (ребро) из множ ества E задается в виде

тройки ( (vi ,vj n), i j), где

n номер

дуги (ребр а) соединяющей (соединяющего)

вершины

vi и v j .

Например, графы а, б на рис. 64.1 могут быть описаны следующим образом:

Va ={v1,v2 ,v3,v4},

Ea ={(v1,v2 ),.(v1,v3 ),(v1,v4 ),(v2 ,v3 ),(v3,v 4 ),(v4 ,v2 )};

Vb ={v1,v2,v3,v4},

Ea ={(v1,v2 ),.(v1,v3),(v1,v4 ),(v2 ,v3),(v2,v4 ),(v3,v4 )}

Для

взвешенн ых графов каждая дуга (ребро) из множества E

задается

в виде т ройки (vi , v j , r )

( (vi , v j , r) , (i j ), где число r

означает

пропускную способность

дуги

(ребра). Н апример, ребро,

соединяющее вершины v1 и v2 . в графе на

рис. 62.2,г будет описано так:

(v1 ,v2 ,48).

191

64.2. Основные понятия в теории графов.

В

дальнейшем под

записью G={V, E} будем понимать неориентирова

нный граф или

мультиграф, оговарив ая при необходимости, какой именно граф имеется в виду. Пусть V ={v1,v2 ,...,vn} есть множество вершин графа. Две вершины vi

и v j называются смежными, если ребро (vi ,vj )принадлежит E. Ребро (vi ,vj ) называется инцидентным вершинам vi и v j , а вершины vi и v j , называются инцидентными ребру (vi ,vj ). Если ребро является петлей, то

оно считается дважды инцидентной соответствующей вер шине.

Граф без петель, в котором все вершины смежные, называется полным. На рис. 64 .4,а- 64.4,в приведены полные графы с четырьмя, пятью и шестью верш инами.

Рис. 64.4

Число ребер графа G={V, E}, инцидентных верши не vi называется степенью вершины vi и обозначается d (vi ) . Для графов на рис. 64.2,а и рис. 64.2,в имеем:

а) d (v1 ) =5, d (v2 ) =6, d (v3 ) =3, d (v4 ) =3, d (v5 )=3 ,

в) d (v1 ) =3, d (v2 ) =4, d (v3 ) =3, d (v4 ) =3, d (v5 )=3 ,

Так как каждое ребро инцидентно двум верши нам, то:

сумма степеней всех вершин графа является четным числом

иравно удвоенному числу ребер;

192

в любом графе число вершин с нечетными с тепенями явля-

ется четным.

В справедливос ти этих утверждений легко убедиться, просмотрев граф, изображенный на рис. 64.2,а. Рёбер в этом графе 10, сумма степеней равна 20 и в нем 4 ве ршины с нечетными степенями. В полном графе с n вершинами степень каждой вершины равна (n-1), а т.к. каждое ребро соединяет две вершин ы, то:

в полном графе с n вершинами содержится n(n-1)/2 ребер.

Граф G ={V, E } называется подграфом графа G ={V, E }, если V1 V

и

E1

, т.е. если каждая вершина графа G

1

является вершиной графа

G

 

E

 

 

 

 

 

 

 

 

и каждое

ребро гра фа G 1

является ребром графа G.

Подграф V

графа

 

 

 

 

 

 

 

 

 

1

 

 

 

G ={V, E }

называе тся порожденным множеством

в ершин V1 ,

если

любое ребро графа G ={V, E }

с вершинами из множества V1 , является

также ребром и в граф е G´={V ,E }.

 

 

 

 

 

 

 

 

 

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 64.5

Графы на рис. 64.5 являются подграфами графа, изображенного на рис. 64.4,б, но толь ко подграф на рис. 64.5,а является порожденным

множеством вершин {v1 , v2 , v3 , v4 }.

Пусть задан гра ф G ={V, E } с множеством его верш ин V ={v1,v2 ,...,vn}

. Путь длины n в данном графе это последовательность вершин

L=vi1 ,vi2 ,vi3 ,...,vik ,vik+1 ,...,vin ,vin+1 ,

вкоторой вершины v ik и vik +1 (k=1,…, n) соединены ребром. Вершина vik

называется началом пути L, а вершина vik +1 называется концом пути L.

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

193

Рис. 64.6

Две вершины графа G = {V, E }называются связными, если

существует путь L, их соединяющий. Граф называется связным, если любые две его вершины могут быть соединены путем. Существует расхожее высказывание, что упомянутый выше «граф знакомств», в котором в качестве вершин выступают люди всей земли, является связным, и более того, что любые две вершины в нем могут быть соединены путем, длина которого, не превосходит шести.

В графе на рис.64.6 вершины v1 и v10 связными не являются, т.к.

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

Если граф G несвязен, то множество его вершин V можно разбить на несколько подмножеств V1,V2 ,....,Vk , в каждом из которых вершины

связаны между собой. Подграф, порожденный каждым таким подмножеством, называется компонентой связности графа G и, таким образом, считается, что граф G состоит из k компонент с вязности. Граф G на рис. 64.6 состоит из 2-х компонент связности. П ервая компонента

определяется подмно жеством вершин {v1,v2,...,v8}, а в торая компонента определяется подмножеством вершин {v9 ,v10}.

Ребро, после удаления которого компонента связности графа перестает быть связной, называется мостом. В графе на рис. 64.6 ребро

(v4,v5 ) является мосто м.

Внеориентированном графе:

путь, в котор ом нет повторяющихся ребер называ ется цепью;

цепь без повторяющихся вершин называется простой;

цепь, в которой совпадают концевые

вершины, называется

циклом;

 

цикл, в котором нет повторяющихся вершин, кр оме концевых, на-

 

зывается простым циклом, или контуром.

путь L1 =v1,v2,v4,v3

В

графе G, представленном на рис. 64.6

соединяет вершины v1 и v3. Путь L2 =v1,v2,v4,v5,v4,v3 та кже соединяет эти

вершины, однако, если путь

L1 является цепью, то путь

L2 цепью не

является, потому что в нем

ребро (v4 ,v5 ) повторяет ся

дважды. Цикл

 

194

 

L3 =v4,v3,v1,v2,v4 является контуром, но

цикл

L3 =v4,v3,v1,v1,v2,v4

контуром не является, потому что вершина v1 появляется дважды.

64.3. Эйлеровы

графы.

Пусть

G={V, E} есть

неориентированный

граф. Цепь, содержащая все ребра графа, нзывается

эйлеровой цепью. Цикл, содержащий все ребра графа, называется эйлеровым циклом. Цикл L 135241 в графе в) на рис. 64.6

является эйлеровым. Путь

L5234512 в графе б) на рис. 64.6

является эйлеровой ц епью.

 

 

 

После

введенных

определений вопрос

И ммануила Канта

относительно кенигсбергских мостов может быть

сформулирован

так:

существует ли эйлеров цикл в графе на рис. 64.3,б?

 

 

Теорема

(Эйлер). Связный граф содержит

эйлеров цикл

(и

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

Так как в графе кенингсбергских мостов (рис. 64.3,б) все вершины имеют нечетные сте пени, то из данной теоремы следует отрицательный ответ на вопрос Имм ануила Канта. Более того, эйлерова цепь в нем также отсутствует, т.к. он и меет 4 вершины с нечетными степен ями. Граф на рис. 64.7 с учетом пунктирного ребра содержит эйлеров цикл, а без учета пунктирного ребра содержит эйлерову цепь.

Рис. 64.7

Если граф является эйлеровым, то алгоритм нахождения эйлерова цикла состоит в следующем: выйдя из произвольной вершины, последовательно заче ркиваем проходимые ребра, остерегаясь пройти по мосту при наличии другой возможности. Если граф является полуэйлеровым, то для нахождения эйлерова пути, необходимо: 1) соединить дополнительным ребром две вершины с нечетными степенями; 2) в полученном эйлеровом графе найти эйлеров цикл ; 3) в найденном эйлеровом цикле удал ить дополнительное ребро.

Рассмотрим граф на рис. 64.7. После введения пунктирного ребра

195

(v1, v5) граф становится эйлеровым. Начнем поиск эйлерова цикла с 1-ой вершины. На рис. 64.8 указана одна из возможных последовательностей прохождения его ребер. Искомый эйлеров цикл будет таким:

v1, v1, v2, v4, v3, v1, v5, v7, v8, v6, v5, v4, v1.

Заметим, что после 6-ого шага нельзя из вершины v5, идти в вершину v4, т.к. ребро (v4, v5) после удаления пройденных ребер стало мостом. Вычеркнув из полученного цикла ребро (v1, v5) и переставив начальный его кусок в конец, получаем искомую эйлерову цепь

v5, v7, v8, v6, v5, v4, v1, v1, v2, v4, v3, v1.

64.4.

Изоморфизм

графов.

Из предыдущих

рассмотрений

становится

понятным,

что

определяющим в графах является

количественный состав множества вершин и имеющиеся

соединения

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

правой вертикали графа на рис. 64.8,б (верхнюю вершину назвать v4, а нижнюю вершину назвать v2), то алгебраическое описание этого графа будет совпадать с алгебраическим описанием графа на рис. 64.8,а.

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

просто нумерацией вершин.

В связи с этим,

в теории графов вводится

очень важное понятие изоморфизма графов.

 

Два графа G = {V , E } и G = {V , E

2

}

называются изоморфными,

1

1

1

2

2

 

 

если между элементами множеств V1 и V2 можно установить взаимно однозначное соответствие f , при котором пара (vi,vj) E1, тогда и только тогда, когда (f (vi), f( vj)) E2 , т.е. вершины vi и vj соединены ребром в графе G1только в том случае, когда вершины f (vi) и f(vj) соединены ребром в графе G1. Иначе говоря, соответствие f сохраняет свойство пар вершин быть смежными.

Если два графа, представляющие собой математические модели различных изучаемых явлений, оказываются изоморфными, то, повидимому, эти явления обладают общими объективными закономерностями.

196

Рис. 64.8

Непосредственно из определения следует, что все вершинно-реберные свойства изоморфны х графов идентичны. Потому, если найдется свойство такого типа, которым обладает один граф и не обладает другой, то такие два графа являются неизоморфными. Так, сразу видно, что графы 64.8,в и 64.8,г на рис. 64.8 неизоморфны, т.к. в гр афе 64.8,в степени 4-х вершин равны 3, а в графе 64.8,г только две вершины имеют степени, равные 3. У графов 6 4.8,г и 64.8,д на этом рисунке наб оры степеней всех вершин совпадают ( у двух вершин степени равны 3 и у 4-х вершин степени равны). Однако эти графы также неизоморфны , ибо в графе на рис. 64.8,г имеется цикл длины 3, а в графе на рис.64.8,д т акого цикла нет.

Рис. 64.9

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

197

64.9,а, 64.9,б, 64.9,в н а рис. 64.9 изоморфны между собо й. Но следующие соответствия между вершинами графов убеждают нас в этом:

v1u1 w1, v2u3 w3, v3u6 w5, v4u5 w2, v5u2 w4, v6u4 w6

64.5. Деревья. Очень важным в теории графов является понятие дерева. Деревом наз ывается связный граф, не содержащий циклов. Графы G1 и G2 на рис. 64.10 являются деревьями, а графы G3 (есть цикл) и G4 (не является связным) де ревьями не являются.

Рис. 64.10,а

Дерево обладает след ующими свойствами:

каждое дерево, состоящее из n вершин, содержит ровн о (n-1) ребро;

любые две верши ны дерева соединены ровно одной п ростой цепью;

каждое ребро дер ева является мостом.

Рис.64.10,б

В приведенных на рис. 64.10,а

изображениях де

ревьев G1

и G2

имеются пересекающ иеся ребра, но

эти графы можно

нарисовать

так,

чтобы никакая пара ребер не пересекалась.

Остовом связного графа G={V, E} называется подграф,

содержащий все его вершины и являющийся деревом.

198

Рис. 64.11

Деревья, изображенные на рис. 64.11,б и рис. 64.1 1,в представляют собой два различных остова графа, изображенного на рис.64.11,а

Рис. 64.12,а

На графе на рис. 64.12,а изображены населенные пу нкты. В одном из них необходимо установить электростанцию, от которой будут протянуты провода во все остальные пункты. «Веса» на ребрах графа 64.12,а обозначают стоимос ть (в тысячах рублей) прокладки проводов между соответствующими пунктами. Строящаяся электросеть будет представлять собой остов графа 6 4.12,а, ибо она должна охватывать все пункты и не должна содержать циклов.

Граф, изображенный на рис. 64.12,б является примером такой электросети, а сумма весов на ребрах этого дерева, равная 268 тыс. руб., означает стоимость реализации электросети, согласно данному проекту. Естественно возникает вопрос: существует ли проект э лектросети более дешевый?

199

Рис. 64.12,б

Если отвлечься от конкретной данной ситуации, то этот вопрос можно сформулировать в виде следующей задачи. Для взве шенного связного графа найти остов, сумма весов ребер которого была бы м инимальна.

Приведем без доказательства алгоритм Прима, решающий данную задачу. Пусть дан взвешенный граф G={V, E}, имею щий n вершин.

Алгоритм Прима сост оит в следующем. На первом шаге выбираем в графе G´ ребро минимального веса. Оно представляет собой дерево D1 , состоящее из одного ребра. Далее среди ребер, соеди няющих вершины дерева D1 с вершинам и графа G´, которые не входят в D1, выбираем ребро

минимального веса и присоединяем его к дереву

D1 . П олучается дерево

D2 , состоящее из двух ребер. Далее среди ребер, соединяющих вершины

дерева D2 с вершинами графа G´, которые не входят в D2 , выбираем

ребро минимального веса и присоединяем его к дереву D2 . Получается

дерево D3 , состоящее из трех ребер.

 

Дерево Dn −1 , построенное в результате

повтор ения описанной

процедуры (n-1) раз, будет являться остовом минимального веса.

Применяя алгор итм Прима к приведенному выше примеру, получим проект реализации требуемой электросети, приведенн ый на рис. 64.13. Выбор ребер при построении данного проекта проходил в следующей последовательности:

(v3,v6), (v3,v10), (v3 ,v1), (v10,v8), (v8,v11),(v6,v4), (v4,v5), (v5,v9), (v1,v2),

200

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