Один із них – задати кожну із множин V та E за допомогою переліку їхніх елементів.
Приклад 4.1. G1 = (V1, E1), де V1 = {v1, v2, v3, v4} і E1 = {(v1, v3),
(v1, v4), (v2, v3), (v2, v4), (v3, v4)} − граф із чотирма вершинами й п'ятьма ребрами, а G2 = (V2, E2), де
V2 = {v1, v2, v3, v4, v5} і
E2 = {(v1, v2), (v2, v4), (v1, v5), (v3, v2), (v3, v5), (v4, v1), (v5, v4)} −
граф із п'ятьма вершинами й сімома ребрами. ◄
Граф G = (V, E) зручно зображати за допомогою рисунка на площині, який називають діаграмою графа G. Вершинам графа G ставлять у бієктивну відповідність точки площини. Точки, що відповідають вершинам v i w, з'єднують лінією (відрізком або кривою) тоді й тільки тоді, коли v i w – суміжні вершини. Зрозуміло, що діаграма графа змінює вигляд залежно від вибору відповідних точок на площині.
Приклад 4.2. На рис. 4.1 подано діаграми графів G1 i G2 із по-
переднього прикладу. |
|
|
v2 |
|
v1 |
v2 |
v1 |
|
|
|
|
v3 |
|
|
v3 |
v4 |
v5 |
v4 |
Рис. 4.1 ◄ |
G1 |
|
|
G2 |
|
|
|
|
Графи можна задавати також за допомогою матриць. Занумеруємо всі вершини графа G натуральними числами від
1 до n. Матрицею суміжності A графа G називають квадратну n n-матрицю, у якій елемент aij i-го рядка та j-го стовпця дорівнює 1, якщо вершини vi та vj з номерами i та j суміжні, і дорівнює 0 в іншому випадку.
Приклад 4.3. Для графів G1 i G2 маємо відповідно
|
0 0 1 1 |
|
|
|
|
0 1 0 1 1 |
|
|
|
|
|
|
|
1 0 1 1 0 |
|
|
|||
A1 = |
|
0 0 1 1 |
|
|
A2 = |
|
|||
|
|
та |
|
0 1 0 0 1 |
|
◄ |
|||
|
|
1 1 0 1 |
|
|
|
|
1 1 0 0 1 |
|
|
|
|
1 1 1 0 |
|
|
|
|
1 0 1 1 0 |
|
|
|
|
|
|
|
|
|
|||
Очевидно, що матриці суміжності графів симетричні. Занумеруємо всі вершини графа G числами від 1 до n, а всі
його ребра − числами від 1 до m. Матрицею інцидентності B
162
графа G називають n m-матрицю, у якій елемент bij i-го рядка та j-го стовпця дорівнює 1, якщо вершина vi з номером i інцидентна ребру ej з номером j, і дорівнює 0 в іншому випадку.
Приклад 4.4. Для графів G1 і G2 маємо такі матриці інцидентності (ребра графів занумеровано в тому порядку, у якому їх виписано в прикладі 4.1):
|
1 1 0 0 0 |
|
|
1 0 1 0 0 1 0 |
|
|
||
|
|
|
1 1 0 1 0 0 0 |
|
|
|||
B1 = |
|
0 0 1 1 0 |
|
і B2 = |
. ◄ |
|||
|
|
|
0 0 0 1 1 0 0 |
|
||||
|
|
1 0 1 0 1 |
|
|
|
0 1 0 0 0 1 1 |
|
|
|
|
0 1 0 1 1 |
|
|
|
0 0 1 0 1 0 1 |
|
|
|
|
|
|
|
|
|||
Нарешті, ще одним способом задання графів є списки суміж ності. Кожній вершині графа відповідає свій список. До списку, що відповідає вершині v, послідовно записують усі суміжні їй вершини.
Приклад 4.5. Для графів G1 і G2 маємо такі списки суміжності:
G1: v1: v3, v4 v2: v3, v4 v3: v1, v2, v4 v4: v1, v2, v3
G2:
v1: v2, v4, v5 v2: v1, v3, v4 v3: v2, v5 v4: v1, v2, v5
v5: v1, v3, v4 ◄
Вибір і зручність того чи іншого способу задання графів залежить від особливостей розв'язуваної задачі.
Завдання для самостійної роботи
1. Нехай задано граф G = (V, E):
(а) V = {1, 2, 3, 4}, E = {(1, 3), (2, 3), (3, 4), (4, 1), (4, 2)}; (б) V = {a, b, c, d, e},
E = {(a, d), (b, c), (b, e), (c, e), (d, b), (d, e), (e, a)}; (в) V = {A, B, C, D},
E = {(A, B), (A, D), (B, C), (B, D), (C, A), (C, D)}.
Побудувати діаграму, матриці суміжності та інцидентності, а також списки суміжності для кожного із цих графів.
2. Нехай V = {a, b, c, d, e}. Граф G = (V, E) задано за допомогою матриці суміжності A:
163
|
|
0 |
1 |
1 |
0 |
1 |
|
|
|
0 |
1 |
0 |
0 |
1 |
|
||
|
|
1 |
0 |
0 |
1 |
1 |
|
|
|
|
1 |
0 |
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
||||||||||
(а) A = |
|
1 |
0 |
0 |
0 |
1 |
|
; |
(б) A = |
|
0 |
1 |
0 |
1 |
0 |
|
; |
|
|
0 |
1 |
0 |
0 |
0 |
|
|
|
|
0 |
0 |
1 |
0 |
1 |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
1 |
1 |
1 |
0 |
0 |
|
|
|
|
1 |
0 |
0 |
1 |
0 |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
0 |
0 |
1 |
0 |
1 |
|
|
|
0 |
1 |
1 |
0 |
0 |
|
||
|
|
0 |
0 |
1 |
0 |
0 |
|
|
|
|
1 |
0 |
1 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
||||||||||
(в) A = |
|
1 |
1 |
0 |
1 |
1 |
|
; |
(г) A = |
|
1 |
1 |
0 |
0 |
0 |
. |
|
|
|
0 |
0 |
1 |
0 |
1 |
|
|
|
|
0 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
1 |
0 |
1 |
1 |
0 |
|
|
|
|
0 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
||||||||||
Визначити множину ребер E графа G та побудувати його діаграму, матрицю інцидентності та списки суміжності.
2. Граф G задано його діаграмою:
1 |
|
2 |
a |
b |
3 |
|
c |
|
d |
5 |
4 |
e |
f |
|
|
|
(а) |
(б) |
A B С
D E F
(в)
Визначити множину вершин V і множину ребер E, матриці суміжності й інцидентності, а також списки суміжності графа G.
4. Нехай задано матрицю суміжності A деякого графа G. Як за допомогою матриці A визначити:
(а) кількість вершин графа G; (б) кількість ребер графа G; (в) матрицю інцидентності графа G?
4.2.Підграфи. Ізоморфізм графів. Операції для графів
Граф G1 = (V1, E1) називають підграфом графа G = (V, E), якщо
V1 V та E1 E.
164
Важливі класи становлять підграфи, які можна отримати в результаті застосування до заданого графа операцій вилучення вершини або вилучення ребра.
Операція вилучення вершини v із графа G = (V, E) полягає у вилученні з множини V елемента v, а з множини E − усіх ребер, інцидентних v.
Операція вилучення ребра e з графа G = (V, E) − це вилучення елемента e змножини E. Прицьому всі вершинизберігаються.
Графи G1 = (V1, E1) і G2 = (V2, E2) називають ізоморфними, якщо існує таке взаємно однозначне відображення ϕ множини
вершин V1 на множину вершин V2, що ребро (v, w) E1 тоді й тільки тоді, коли ребро (ϕ(v), ϕ(w)) E2.
Відображення ϕ називають ізоморфним відображенням, або
ізоморфізмом, графа G1 на граф G2.
Таким чином, ізоморфні графи відрізняються лише ідентифікаторами (іменами) своїх вершин. Із погляду теорії графів ця відмінність неістотна, тому зазвичай ізоморфні графи ототожнюють і, зображаючи графи у вигляді діаграм, або зовсім не ідентифікують їхні вершини, або нумерують вершини натуральними числами.
Приклад 4.6. Неважко переконатися, що всі графи на рис. 4.2, ізоморфні між собою, а графи на рис. 4.3 − не ізоморфні.
|
|
|
|
|
|
|
|
a |
b |
|
|
|
|
А |
|
|
В |
|
|||
|
1 |
2 |
|
3 |
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
f |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
c |
|
|
|
|
F |
|
|
|
|
4 |
5 |
|
6 |
|
|
|
|
|
|
|
|
|
E |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
D |
|
|
C |
||||||||||||||||
|
|
|
|
|
e |
d |
|
|
Рис. 4.2 |
||||||||||||
G1 |
|
|
|
|
|
G2 |
|
|
|
G3 |
|
||||||||||
H1 H2 Рис. 4.3 ◄
165
Наприклад, відображення ϕ множини вершин
V1 = {1,2,3,4,5,6}
графа G1 на множину вершин
V2 = {a, b, c, d, e, f}
графа G2, за яким ϕ(1) = a, ϕ(2) = c, ϕ(3) = e, ϕ(4) = f, ϕ(5) = d, ϕ(6) = b, є ізоморфізмом графа G1 на граф G2. Аналогічно можна побудувати ізоморфне відображення графа G2 на граф G3.
Відношення ізоморфізму є відношенням еквівалентності на сукупності графів.
Граф G = (V, E) називають повним, якщо будь-які дві його вершини суміжні (тобто E = V (2)). Повний граф із n вершинами позначають Kn.
Приклад 4.7.
1. Скільки ребер містить повний граф із n вершинами? Оскільки в повному графі будь-які дві його вершини з'єднані
ребром, то кількість його ребер становить C(n, 2) = n(n – 1)/2. 2. Чи існує повний граф, у якого кількість ребер дорівнює: (а) 15; (б) 18; (в) 199…900…0 (k дев'яток і k нулів)?
(а) Кількість ребер повного графа з n вершинами дорівнює n(n – 1)/2. Рівняння n(n – 1)/2 = 15 має корені 6 і –5. Отже, існує повний граф із6 вершинами, кількість реберу якому дорівнює 15.
(б) Рівняння n(n – 1)/2 = 18 не має натуральних коренів, тому такий повний граф не існує.
(в) Розглянемо рівняння
n(n – 1) = 2 199…900…0 = 200…0 199…9 (k нулів і k дев'яток).
Число у правій частині цього рівняння можна подати у вигляді 2 10k(2 10k – 1), тобто n = 2 10k. Отже, такий повний граф існує й має 2 10k вершин. ◄
Для графів можна означити операції об'єднання, перетину й доповнення.
Об'єднанням графів G1 = (V1, E1) і G2 = (V2, E2) називають
граф G = (V1 V2, E1 E2); позначають G = G1 G2. Об'єднання G = G1 G2 називають прямою сумою графів G1 i
G2, якщо V1 ∩ V2 = .
Перетином і різницею графів G1 = (V, E1) i G2 = (V, E2) з од-
наковими множинами вершин називають відповідно графи
G′= (V, E1 ∩ E2) i G′′ = (V, E1 \ E2); позначають G′= G1 ∩ G2 і G′′ = G1 \ G2.
166