Теория графов

Содержание

Слайд 2

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

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

Слайд 3

Граф

это конечное множество вершин V и множество ребер R, соединяющих пары

Граф это конечное множество вершин V и множество ребер R, соединяющих пары
вершин, G=(V,R).
Мощности множеств V и R равны N и M.
Множество ребер может быть пустым.
Примеры вершин – объекты любой природы (населенные пункты, компьютерные сети).
Примеры ребер – дороги, стороны, линии.

Слайд 4

Вершины, соединенные ребром, называются смежными. Ребра, имеющие общую вершину, также называются смежными.

Вершины, соединенные ребром, называются смежными. Ребра, имеющие общую вершину, также называются смежными.

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

Слайд 5


Ориентированный граф Неориентированный граф
В орграфе ребро называют дугой.

Ориентированный граф Неориентированный граф В орграфе ребро называют дугой.

Слайд 6

Маршрут графа – последовательность вершин и ребер.
Маршрут замкнутый (циклический), если начальная и

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

Слайд 7

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

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

Слайд 8

Способы описания графа:

матрица инциденций,
матрица смежности,
списки связи,
перечни ребер.

Способы описания графа: матрица инциденций, матрица смежности, списки связи, перечни ребер.

Слайд 9

Матрица инциденций

N – количество вершин
M – количество ребер
Матрица инциденций – это двумерный

Матрица инциденций N – количество вершин M – количество ребер Матрица инциденций
массив размерности N×M

Слайд 10

Матрица инциденций

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

Матрица инциденций 1 2 3 4 5 6 7 8 9 1

Слайд 11

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

– это двумерный массив N*N.

Матрица смежности – это двумерный массив N*N.

Слайд 12

Матрица смежности графа

Матрица смежности графа

Слайд 13

Матрица смежности сети (с учетом весов ребер)

Матрица смежности сети (с учетом весов ребер)

Слайд 14

Списки связи

Задание графа списками связи осуществляется с помощью одномерного массива размерности N

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

Слайд 15

Списки связи

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

Списки связи 1 2 3 4 5 6 7 8 9 1

Слайд 16

Перечень ребер

Для хранения перечня ребер необходим двумерный массив размерности M×2.
Строка массива описывает

Перечень ребер Для хранения перечня ребер необходим двумерный массив размерности M×2. Строка массива описывает ребро.
ребро.

Слайд 17

Перечень ребер

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

Перечень ребер 1 2 3 4 5 6 7 8 9 1

Слайд 18

Подграфы и деревья

Подграф графа G называют граф, у которого все вершины и

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

Слайд 19

Подграфы и деревья

Дерево – это граф, в котором нет циклов.
Остовное связное дерево

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

Слайд 20

Преобразование графа в остовное связное дерево минимального веса

Пусть G=(V,R) – связанный взвешенный

Преобразование графа в остовное связное дерево минимального веса Пусть G=(V,R) – связанный
неориентированный граф.
Граф G можно представить в виде матрицы смежности, содержащий значения весов ребер.

Слайд 21

Граф в форме схемы

Граф в форме схемы

Слайд 22

Матрица смежности связного взвешенного неориенторованного графа

Матрица смежности связного взвешенного неориенторованного графа

Слайд 23

Подграф графа, остовной связный подграф, остовное связное дерево

Подграф графа, остовной связный подграф, остовное связное дерево

Слайд 24

Цикломатическое число γ показывает сколько ребер графа нужно удалить, чтобы в нем

Цикломатическое число γ показывает сколько ребер графа нужно удалить, чтобы в нем
не осталось циклов.
γ=m-n+1
Пример, γ=8-5+1=4
Для каждого графа обычно существует несколько связных деревьев, с различными весами.

Слайд 25

Остовные связные деревья графа G

Остовные связные деревья графа G

Слайд 26

Построение остовного связного дерева минимального веса. Алгоритм Крускала

Из графа удаляют все ребра,

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

Слайд 27

Существует 4 случая:
1) обе вершины включаемого ребра принадлежат одноэлементным подмножествам, тогда они

Существует 4 случая: 1) обе вершины включаемого ребра принадлежат одноэлементным подмножествам, тогда
объединяются в новое, связное подмножество;
2) одна из вершин принадлежит связному подмножеству, а другая нет, тогда включаем вторую в подмножество, которому принадлежит первая;
3) обе вершины принадлежат разным связным подмножествам, тогда объединяем подмножества;
4) Обе вершины принадлежат одному связному подмножеству, тогда исключаем данное ребро.

Слайд 28

Алгоритм заканчивает работу, когда все вершины будут объединены в одно множество, при

Алгоритм заканчивает работу, когда все вершины будут объединены в одно множество, при
этом оставшиеся ребра не включаются в остовное дерево.

Слайд 29

Пример построения остовного дерева минимального веса для графа G

Пример построения остовного дерева минимального веса для графа G

Слайд 33

Вопросы для закрепления

В какой форме можно представить граф?
В чем разница между

Вопросы для закрепления В какой форме можно представить граф? В чем разница
орграфом и не орграфом?
Какие графы являются деревьями?
Какой граф обладает минимальным весом?

Слайд 34

Изучение графов на языке Паскаль. Построить остовные связные деревья минимального веса для графов

Изучение графов на языке Паскаль. Построить остовные связные деревья минимального веса для
с 5-ю вершинами

Матрицу смежности графа и дерева вывести в виде таблиц.

Слайд 35

Объявление переменных

Два целочисленных пятиэлементных массива X и Y для хранения координат вершин

Объявление переменных Два целочисленных пятиэлементных массива X и Y для хранения координат
графа
Целочисленный двумерный массив R для хранения весов ребер графа
Целочисленные переменные i, n и k для счетчиков циклов
Целочисленная переменная S для хранения суммы весов ребер дерева минимального веса

Слайд 36

Генерация случайных координат 5-ти вершин графа (цикл по i).
Вычисление весов ребер. Вывод

Генерация случайных координат 5-ти вершин графа (цикл по i). Вычисление весов ребер.
матрицы смежности взвешенного орграфа (вложенные циклы по n и по k)
Вывод матрицы смежности взвешенного неориентрованного графа – половины элементов начальной матрицы (начальное значение k=n+1)

Тело программы

Слайд 37

Построение остовного связанного дерева минимального веса с учетом 4-х случаев.

Тело программы

Построение остовного связанного дерева минимального веса с учетом 4-х случаев. Тело программы

Слайд 38

Даны координаты вершин графа. Вычислить весы ребер. Вывести матрицу смежности взвешенного неориентированного

Даны координаты вершин графа. Вычислить весы ребер. Вывести матрицу смежности взвешенного неориентированного
графа. Построить остовное связное дерево минимального веса.

V1(50,59)
V2(84,6)
V3(70,32)
V4(22,59)
V5(91,40)

Слайд 39

V1

V2

V3

V4

V5

V1 V2 V3 V4 V5

Слайд 40

Решение.

R12=round(sqrt(sqr(84-50)+sqr(59-6)))=63

Решение. R12=round(sqrt(sqr(84-50)+sqr(59-6)))=63

Слайд 41

V1

V2

V3

V4

V5

V1 V2 V3 V4 V5

Слайд 42

Решение.

мин R35=22, {3,5}
мин R14=28, {3,5}, {1,4}
мин R23=30, {3,5,2}, {1,4}
мин R13=34, {1,2,3,4,5}
S=22+28+30+34=114

Решение. мин R35=22, {3,5} мин R14=28, {3,5}, {1,4} мин R23=30, {3,5,2}, {1,4} мин R13=34, {1,2,3,4,5} S=22+28+30+34=114

Слайд 43

V1

V2

V3

V4

V5

V1 V2 V3 V4 V5

Слайд 44

Ответы

50 59
84 6
70 32
22 59
91 40
63 34 28 45
30 82 35

Ответы 50 59 84 6 70 32 22 59 91 40 63

55 22
72
22 3 5
28 1 4
30 2 3
34 1 3
114

Слайд 45

68 50
22 88
86 10
78 58
79 29

Даны координаты вершин графа. Вычислить весы ребер.

68 50 22 88 86 10 78 58 79 29 Даны координаты
Вывести матрицу смежности взвешенного неориентированного графа. Построить остовное связное дерево минимального веса.

Слайд 46

Ответы

68 50
22 88
86 10
78 58
79 29
60 44 13 24
101 64 82

Ответы 68 50 22 88 86 10 78 58 79 29 60

49 20
29
13 1 4
20 3 5
24 1 5
60 1 2
117

Слайд 47

Практическая работа

46 51
51 83
43 53
6 60
17 96
32 4 41 54
31 51

Практическая работа 46 51 51 83 43 53 6 60 17 96
36
38 50
38
6
4 1 3
31 2 3
36 2 5
38 3 4
109

Слайд 48

4 67
45 74
25 39
43 83
4 33
42 35 42 34
40 9 58

4 67 45 74 25 39 43 83 4 33 42 35

48 22
63
6
9 2 4
22 3 5
34 1 5
35 1 3
100

Слайд 49

83 88
78 64
1 43
89 34
83 51
25 94 54 37
80 32 14

83 88 78 64 1 43 89 34 83 51 25 94

88 82
18
6
14 2 5
18 4 5
25 1 2
80 2 3
137

Слайд 50

65 34
69 12
33 63
57 18
18 58
22 43 18 53
62 13 69

65 34 69 12 33 63 57 18 18 58 22 43

51 16
56
6
13 2 4
16 3 5
18 1 4
43 1 3
90

Слайд 51

29 35
64 37
26 58
73 1
47 82
35 23 56 50
43 37 48

29 35 64 37 26 58 73 1 47 82 35 23

74 32
85
6
23 1 3
32 3 5
35 1 2
37 2 4
127

Слайд 52

40 57
7 70
86 76
88 3
98 81
35 50 72 63
79 105 92

40 57 7 70 86 76 88 3 98 81 35 50

73 13
79
6
13 3 5
35 1 2
50 1 3
72 1 4
170

Слайд 53

48 37
86 62
40 3
31 40
99 70
45 35 17 61
75 59 15

48 37 86 62 40 3 31 40 99 70 45 35

38 89
74
6
15 2 5
17 1 4
35 1 3
38 3 4
105

Слайд 54

2 23
96 36
56 76
89 96
1 20
95 76 114 3
57 60 96

2 23 96 36 56 76 89 96 1 20 95 76

39 78
116
6
3 1 5
39 3 4
57 2 3
60 2 4
159

Слайд 55

87 51
11 6
51 15
66 51
59 34
88 51 21 33
41 71 56

87 51 11 6 51 15 66 51 59 34 88 51

39 21
18
6
18 4 5
21 1 4
21 3 5
41 2 3
101
Имя файла: Теория-графов.pptx
Количество просмотров: 192
Количество скачиваний: 1