Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Задания для самостоятельной работы




1. Приведите примеры задания графа различными способами: аналитическим, графическим, матричным.

2. Задайте графическим и матричным способами ориентированный, неориентированный и смешанный граф.

3. Задайте произвольный граф G = (X, U), |X| = 9, |U| = 24 и запишите для него матрицу смежности и инцидентности, а также его списковое представление.

4. Приведите словесный описания и составьте структурную схему алгоритма перехода от матрицы инцидентности к матрице смежности и наоборот.

5. Определите количество ре бер в полном графе K15 без петель.

6. Постройте Платоновы графы.

7. Задайте Платоновы графы на основе матриц смежности и инцидентности.

8. Задан произвольный граф G = (X, U), где ½X½=6; ½U½=10. Постройте двойственный ему граф GS.

9. Приведите пример мультиграфа и определите его мультичисло.

10. Приведите примеры нечетких неориентированных графов первого и второго рода.

 

Понятие графа опирается на понятие множества. Графом можно назвать объект, состоящий из двух множеств: точек и линий, которые находятся между собой в некотором отношении. Множество точек графа обозначается X = { x 1, x 2, …, x n } и называется множеством вершин. Множество линий, соединяющих любые пары вершин (xi, xj) Î X, называется множеством ребер или дуг и обозначается U = { u 1, u 2, …, u m }.


Маршруты, цепи, циклы

Маршрутом в графе G = (X, U) называется некоторая конечная последовательность ребер вида S = (x 0, x 1), (x 1, x 2), …, (xl -1, xl), где x 0, xl ─ ─соответственно его начальная и конечная вершины. Очевидно, что в конечном графе G можно выделить только конечное число маршрутов. Число ребер в маршруте S называется его длиной. Существует простой способ определения маршрутов длиной q по матрице R графа G путем возведения ее в q -ю степень.

Например, пусть задана матрица R графа G (рис. 15.23):

  1 2 3 4  
1 0 1 1 0

.

R = 2 1 0 0 1
3 1 0 0 1
4 0 1 1 0

 

Рис. 15.23. Пример графа G

Возведем ее в квадрат по правилу:

                         r 2 i,j = r1,i * rj ,1 + r 2, i * rj ,2 +... + rn , i * rj , n.                        (1.4)

Тогда для рассматриваемого в данном примере графа, к примеру, элемент r 211 матрицы R2 будет иметь следующее значение:

r 2 1, 1 = a 11 b 11 + a 12 b 21 + a 13 b 31 + a 14 b 41 = 0 + 1*1 + 1*1 + 0 = 2.

А, например, r 23,3 = r 1,3 r 3,1 + r 2,3 r 3,2 + r 3,3 r 3,3 + r 4,3 r 3,4 = 1*1 + 0*0 + 0*0 + 1*1 = 2.

  1 2 3 4  
1 2 0 0 2

.

R2 = 2 0 2 2 0
3 0 2 2 0
4 2 0 0 2

Каждый ri , j элемент R2 равен числу маршрутов длиной 2, ведущих из вершины xi в xj. Например, r 3,2 = 2 означает, что в графе два маршрута ведущих из x 3 в x 2 длиной 2: S1 = (x 3, x 1), (x 1, x 2); S2 = (x 3, x 4), (x 4, x 2).

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

Маршрут, в котором нет повторяющихся ребер, называется цепью. Замкнутая цепь, в которой x 0 = xl, называется циклом. Соответственно цепи и циклы называются простыми, если они не содержат повторяющихся вершин, кроме, разумеется, первой и последней в случае цикла. В графе G (см. рис. 15.14, a):

S1 = (x 1, x 2), (x 2, x 3), (x 3, x 6), (x 6, x 2), (x 2, x 4) ─ маршрут,

S2 = (x 1, x 2), (x 2, x 3), (x 3, x 6), (x 6, x 2) ─ цепь,

S3 = (x 6, x 2), (x 2, x 4), (x 4, x 1), (x 1, x 2), (x 2, x 3), (x 3, x 6) ─ цикл,

S4 = (x 1, x 2), (x 2, x 3), (x 3, x 7), (x 7, x 6) ─ простая цепь,

S5 = (x 1, x 2), (x 2, x 3), (x 3, x 7), (x 7, x 6), (x 6, x 5), (x 5, x 4), (x 4, x 1) ─ простой цикл.

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

Связный регулярный граф степени 2 называется циклическим графом или циклом. Циклический граф с n вершинами обозначается Cn (рис. 15.24, а).

                           

а                                                   б

Рис. 15.24 Циклический граф (а), граф-колесо (б)

Соединение графов К1 и Сn-1 (n ³ 3) называется колесом с n вершинами и обозначается Wn. На рис. 15.24, б показано колесо W6.

Две произвольные вершины xi, xj Î X графа называются связными, если существует маршрут S, в котором концевыми будут вершины xi, xj. Граф G называется связным, если любые две его вершины связаны. В противном случае G не связен, а каждый из составляющих его подграфов G1, G2, …, G l называется компонентой связности. Из определения связности следует, что в связном графе G вершина xi связана сама с собой; если xi связана c xj, то xj связана c xi; если xi связана c xj, а xj связана c xk, то и xi связана c xk (xi, xj, xk Î X).

Следовательно, отношение связности является отношением эквивалентности. В этом случае множество вершин Х графа G = (X, U), который моделирует любой объект, можно разбить на непересекающиеся классы G i, причем ребра графа будут соединять только вершины внутри этих классов. Таким образом, получим разбиение графа G на связные подграфы (компоненты связности). Например, графы, изображенные на рис. 15.14, связные, а граф на рис. 15.25 состоит из четырех компонентов связности G1 ─ G4, т.е. не связен. Заметим, что связный граф состоит из единственной компоненты связности. Если граф имеет несколько компонент связности, то он не связен, так как вершины из разных компонент связности нельзя соединить маршрутом.

Рис. 15.25. Пример несвязного графа

Очевидно, что число ребер в связном графе

                                            n – 1 £ m £ n (n – 1)/2.                      (1.5)

Теорема 15.1. Пусть G – простой граф (см. стр. 10) с n вершинами и k компонентами. Тогда число m его ребер удовлетворяет неравенствам

                                        nk £ m £ (n - k)(n - k + 1)/2.             (1.6)

Следствие 15.1. Любой простой граф с n вершинами и более чем (n – 1)(n – 2)/2 ребрами связен.

При конструировании систем часто надо знать, какое наименьшее число связей необходимо удалить из схемы, чтобы она перестала быть связной. Если вершины связного графа G = (X, U) разбить на 2 подмножества X’ и X’’, где X’’, X’ Ì X, X’’ = X \ X’, X’ È X’’ = X, то подмножество ребер U’ Ì U, у которых одни концевые вершины принадлежат X’, а другие X’’, называют разрезом графа G. Подграф G’ = (X, U\U’), полученный из G удалением ребер разреза, будет несвязанным графом, состоящим, по крайней мере, из двух компонент связности. Множество ребер U’’ Ì U, удаление которых дает несвязный подграф G’ = (X, U \ U’’) и не существует подмножества U’ÌU’’, такого, что G’’ = (X, U \ U’), несвязен, называют правильным разрезом. Из определения следует, что правильный разрез разбивает G точно на две компоненты связности. В этом случае разрез будет определяться как объединение правильных разрезов. На рис. 15.26,а показан пример разреза в графе G = (X, U). Разрез показан пунктирной линией.

                

              а                                                                       б

Рис. 15.26. Пример разреза в графе (а) и наличия точки сочленения (б)

Правильными разрезами будут следующие подмножества ребер: U1 = {(x 3, x 6), (x 4, x 6), (x 4, x 7)}, U2 = {(x 4, x 10), (x 5, x 10)}, U3 = {(x 5, x 12)}, U4 = {(x 5, x 15)}, а разрез U = U1 È U2 È U3 È U4. Заметим, что разрез в графе всегда существует. Тривиальными разрезами G являются U’ = U и U’ = Æ. Если разрез состоит из одного ребра ui Î U, то ui называется перешейком или мостом.

Точкой сочленения называется вершина графа, после удаления которой граф распадается на связные компоненты. Например, в графе G на рис. 15.26, б вершина 3 является точкой сочленения.

Неразделимый граф ─ это связный, непустой, не имеющий точек сочленения граф. Блок графа ─ это его максимальный неразделимый подграф. Если G ─ неразделимый граф, то он часто сам называется блоком. Так, на рис. 15.27 приведен пример графа G, имеющего две точки сочленения x 5 и x 6, удаление которых разбивает граф G на 4 блока (рис. 15.28).

Граф блоков B(G) ─ это граф, в котором вершины ─ блоки и две вершины смежны, если соответствующие блоки имеют общую точку сочленения.

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

Рис. 15.27. Граф G        Рис. 15.28. Блоки графа G

Реберная связность l = l(G) – это наименьшее число ребер, удаление которых приводит к несвязному или тривиальному графу.

Для любого графа:

                                        H(G) £ l(G) £ r min (G),                         (15.7)

где r min (G) ─ наименьшая степень графа.

Граф G называется n-связным, если H(G) ³ n и n-реберносвязным, если l(G) ³ n.

Теорема 15.2 (Дирак). Если граф G n-связен, n ³ 2, то любое множество, содержащее n вершин графа G, принадлежит простому циклу.

Теорема 15.3. Граф 3 ─ связен тогда и только тогда, когда он или совпадает с колесом, или получается из колеса с помощью двух типов операций:

1) добавление нового ребра;

2) замена вершины V с r (V), по крайней мере, на две смежные вершины V’, V’’, где каждая вершина, которая была смежна с V, соединяется точно с одной из V’, V’’ так, чтобы в полученном графе r (V’) ³ 3 и r (V’’) ³ 3.

ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ

Пример 1. Пусть задан граф G, показанный на рис. 15.23. Подсчитать количество маршрутов длиной 3 в данном графе.

Решение: Запишем матрицу смежности графа G:

.

Как уже было показано ранее, чтобы найти число маршрутов длиной 2, в заданном графе необходимо возвести его матрицу смежности в квадрат. Алгебраическое произведение матриц определяется по формуле

r 2 ij = aik bki,

где r 2 ij ─ элемент матрицы R2.

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

.

Для того, чтобы определить количество маршрутов длиной 3 в исходном графе, необходимо полученную на первом шаге матрицу R2 умножить на R. Например,

r 31,2 = r 1,1 r 21,2 + r 1,2 r 22,2 + r 1,3 r 23,2 + r 1,4 r 24,2 = 0*0 + 1*2 + 2*3 + 0*0 = 4.

Используя вышеуказанную формулу умножения матриц, получим:

.

Из полученной матрицы R3 следует, что в исходном графе между вершинами, например, x 1 и x 2, существует 4 маршрута длиной 3: S1 = (x 1, x 2)(x 2, x 1)(x 1, x 2); S2 = (x 1, x 2)(x 2, x 4)(x 4, x 2); S3 = (x 1, x 3)(x 3, x 1)(x 1, x 2); S4 = (x 1, x 3)(x 3, x 4)(x 4, x 2).

Пример 2. Для графа, изображенного на рис. 15.29, привести примеры маршрута, цепи, цикла, простой цепи и простого цикла.

Рис. 15.29. Пример графа G

Ответ: Маршрутом в графе является любая конечная последовательность ребер, причем маршрут может проходить через одну и ту же вершину или ребро любое число раз. Тогда в качестве маршрута можно принять такую конечную последовательность: S = (x 1, x 2), (x 2, x 6), (x 6x 2), (x 2x 7), (x 7x 6), (x 6x 2). Цепью называют маршрут, не имеющий повторяющихся ребер. Таким образом, последовательность S = (x 1, x 2), (x 2, x 4), (x 4, x 6), (x 6, x 2), (x 2, x 7) можно считать цепью. Цикл представляет собой замкнутую цепь, т. е. цепь, у которой первая и последняя вершины совпадают. Тогда последовательность C = (x 1, x 5), (x 5, x 3), (x 3, x 1), (x 1, x 8), (x 8, x 5), (x 5, x 1) является циклом. При это, как мы видим, цепь и цикл могут проходить несколько раз через одну и ту же вершину. Простая цепь (цикл) не может включать в себя ни повторяющихся ребер, ни вершин. Примером простой цепи может служить последовательность S = (x 1, x 2), (x 2, x 4), (x 4, x 6), (x 6, x 8), (x 8, x 3); а простой цикл C = (x 1, x 5), (x 5, x 3), (x 3, x 1).

Пример 3. Для графа, заданного на рис. 15.30 привести пример разреза, правильного разреза.

Ответ: Правильными разрезами будут: U1 = {(x 3, x 6), (x 4, x 6), (x 4, x 7); U2 = {(x 4, x 10), (x 5, x 10)}; U3 = {(x 5, x 12)}; U4 = {(x 5, x 15)}. А разрез U определяется как их объединение: U = U1 È U2 È U3 È U4.

Рис. 15.30. Пример графа G

 

ВОПРОСЫ ДЛЯ САМОКОНТРОЛЯ

1. Что из себя представляет маршрут в графе?

2. Как определяется длина маршрута?

3. Что такое маршрут в графе. Как определяется длина маршрута?

4. Дайте определение цепи, цикла, простого цикла и простой цепи в графе.

5. Какой граф называется связным?

6. Что такое компонента связности?

7. Что такое блок графа?

8. Дайте определение разреза, правильного разреза графа. Приведите примеры.

9. Дайте определение вершинной связности. Приведите примеры.

10. Дайте определение реберной связности. Приведите примеры.





Поделиться с друзьями:


Дата добавления: 2018-10-18; Мы поможем в написании ваших работ!; просмотров: 442 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Чтобы получился студенческий борщ, его нужно варить также как и домашний, только без мяса и развести водой 1:10 © Неизвестно
==> читать все изречения...

4430 - | 4364 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.013 с.