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

GED / semestr5 / 20140120083045

.pdf
Скачиваний:
17
Добавлен:
11.05.2015
Размер:
348.3 Кб
Скачать

9. ГРАФЫ Определение графа

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

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

Объект, состоящий из двух множеств (множества точек и множества линий), которые находятся между собой в некотором отношении, называется графом.

Точки обозначают Х = {х1, х2,…, хn}, |Х| = n и называют вершинами графа.

Множество линий, соединяющих пары вершин (xi, хj), где xi, хj Х, называется множеством ребер или дуг, и обозначается U = {u1, u2,…, um}, |U| = m.

Графом можно считать объект, который обозначается как G = (X, U). В общем случае множество линий U можно представить в виде

U = ŨÈŪÈŮ,

где Ũ – подмножество неориентированных линий (ребер), в котором каждое ребро uk » Î Ũ, определяется неупорядоченной парой вершин xi, хj, которые оно соединяет и записывается uk = (xi, хj), или uk = (хj , xi).

Ū – подмножество ориентированных линий (дуг).

Существенно направление соединений. Каждая дуга uk Î Ū определяется упорядоченной парой вершин xi, хj, которые uk соединяет и записывается uk = < xi, хj >.

Ů – подмножество линий (петель), каждая из которых выходит и входит в одну и ту же соответствующую этой линии вершину. Каждая петля определяется упорядоченной или неупорядоченной парой ui = (xk, хk) или ui = < xk, хk >.

Граф G = (X, U), у которого Ū, Ũ, Ů ¹ Æ называется смешанным.

Рисунок 7.1

Здесь |Х| = 5; |U| = 10; U = Ũ Ū Ů;

Ū = {u3, u4, u8, u10}; Ũ = {u1, u5, u6, u7, u9}; Ů = {u2}.

Подмножество U можно представить как множество кортежей длины

2.

Граф G = (X, U), у которого U = Ů Ū, а Ũ = Ø называется ориентиро-

ванным графом или орграфом.

Граф G = (X, U), у которого U = Ũ Ů, называется неориентирован-

ным или неорграфом.

х1

х2

х3

х4

Рисунок 7.2 – Орграф с петлями Рисунок 7.3 – Неорграф с петлями

На рисунке 7.2 показан орграф с петлями, где U = {<x1, x2>, <x2, x1>, <x2, x2>, <x1, x4>, <x1, x3>, <x4, x2>, <x3, x3>}. Каждая дуга ui Uz пред-

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

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

Граф G = (X, U), у которого существует хотя бы одна пара вершин, соединяемых m ребрами (m>1), ui U называется мультиграфом, а максимальное значение m называется мультиграфическим числом графа G. Ребра, соединяющие одну и ту же пару вершин называется кратными.

Пример мультиграфа приведен на рисунке 7.4.

Рисунок 7.4 - Мультиграф Мультиграфическое число графа, приведенного в качестве примера

равно m = 3.

Задание графов

Если ребро uk U графа G = (X, U) соединяет вершины xi, xj X, т.е. uk = (xi, xj), то говорят, что ребро uk инцидентно вершинам xi, xj. Вершины xi, xj называют инцидентными ребру uk.

Любые две вершины xi, xj X графа G = (X, U) называют смежными, если существует соединяющее эти вершины ребро uk U, т.е. uk = (xi, xj). Если два ребра инцидентны одной и той же вершине, то их называют смежными.

Отношение смежности и инцидентности могут иметь место как на множестве Х, так и на множестве U.

Основными способами задания графов являются геометрический, аналитический и матричный.

Граф называется помеченным, если его вершины отличаются одна от другой метками. Например, х1, х2, х3,…, хn.

Говорят, что задан граф, если заданы множество вершин Х, множество ребер U и инцидентор F, определяющий, какую пару вершин xi, xj X соединяет ребро uk = (xi, xj).

Большинство задач автоматизации конструирования решается при помощи матричного задания графа.

Квадратную таблицу R = ||rij||nxn называют матрицей смежности, если ее элементы образуются по правилу:

1, если вершина xi смежна с xj;

rij =

0, в противном случае. Для мультиграфа запишется:

m, если вершина xi соединена с вершиной xj m ребрами;

rij =

0, в противном случае.

При таком задании очевидно, что матрица будет симметричной.

Рисунок 7. 5 Пример графа

Матрица смежности R будет выглядеть:

 

х1

х2

х3

х4

х5

х1

1

1

0

1

0

х2

1

0

1

0

1

х3

0

1

0

1

1

х4

1

0

1

0

0

х5

0

1

1

0

0

Недостаток этого представления состоит в том, что объем занимаемой памяти составляет n2. Объем памяти можно сократить, если хранить треугольную матрицу:

 

х1

х2

х3

х4

х5

х1

1

1

0

1

0

х2

 

0

1

0

1

х3

 

 

0

1

1

х4

 

 

 

0

0

х5

 

 

 

 

0

В том случае, когда в графе G = (X, U) |X| = n, |U| = m m<<n, его задают с помощью списка пар, соответствующих его ребрам или с помощью списков смежности. Для рисунка 7.5 список пар выглядит: 1 1, 1 2, 1 4, 2 5, 2 3, 3 4, 3 5. Объем памяти составит 2m. При таком представлении нетрудно найти все ребра, ведущие из одной вершины.

При представлении графа списком смежности для каждой вершины xi X составляется список вершин xj, таких, что (xi, xj) U.

Для графа приведенного на рисунке 7.5 списки смежности выглядят:

Рисунок 7.6 Задание графа списком смежности (x5, x6 заменить на x4, x5) При таком представлении каждое ребро в списке записано дважды.

Прямоугольная таблица вида I = || ik,ℓ ||nxm называется матрицей инциденций, если ее элементы образуются по правилу:

1, если вершина хk инцидентна ребру u;

ik,ℓ =

0, в противном случае.

Матрица инциденций I для графа, изображенного на рисунке 7.5 приведена ниже.

 

u1

u2

u3

u4

u5

u6

u7

х1

1

1

1

0

0

0

0

х2

1

0

0

1

0

1

0

х3

0

0

0

0

1

1

1

х4

0

0

1

0

0

0

1

х5

0

0

0

1

1

0

0

Строки таблицы соответствуют вершинам графа, а столбцы – ребрам. В каждом столбце не более двух единиц. Две единицы в случае если ui ребро и одна – если петля.

Матрицы R и I однозначно задают информацию о графе. Можно переходить от одной матрицы к другой. При переходе от I к R теряется нумерация ребер. При переходе от R к I нумеруем единичные элементы ri,j соответствующими значениями uk U.

Соседние файлы в папке semestr5