Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3 - Графы / Лекция 16 Определения.doc
Скачиваний:
129
Добавлен:
09.04.2015
Размер:
161.79 Кб
Скачать

Б) Матрица инцидентности

Матрица инцидентности S = , имеет n строк и m столбцов, где n – число вершин в графе, m – число ребер (дуг) в графе. Элементы этой матрицы определяются по следующим правилам.

Для неорграфа

sij =

Вот пример матрицы инцидентности неорграфа.

S67 = .

Задание. Нарисуйте граф.

Для орграфа учитывается ориентация:

sij =

Здесь каждый столбец содержит один элемент, равный +1, и один элемент, равный –1, либо константу.

Два графа эквивалентны, если равны их матрицы инцидентности.

Для псевдографа показанного на рис. 17.12, получим такую матрицу (номера строк и столбцов соответствуют индексам вершин, ребер и дуг):

S69 = .

Матрица S задает граф с точностью до изоморфизма.

основное преимущество матрицы А перед матрицей S в том, что за один шаг алгоритма можно получить ответ на вопрос: есть ли ребро из вершины хi в хj?

Основной недостаток матрицы А – большой объем памяти независимо от числа ребер: n2.

Если заданы веса, то используются дополнительные векторы весов вершин и ребер (дуг).

Р исунок 17.12

17.2.3.2 Векторная форма представления графов а) Задание графа массивом преемников вершин

Матрица смежности отображается по строкам одномерным массивом FO, в котором для каждой вершины, начиная с первой, указываются вершины преемники. Списки преемников отдельных вершин разделяются символом Ø

2

5

Ø

1

3

6

Ø

Для неорграфа и мультиграфа массив имеет длину 2m+n, для орграфа m+n.

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

Б) Задание графа массивом предшественников вершин

Здесь матрица смежности отображается по столбцам. Форма массива FI такая же, что и у FO.

Для неорграфов и мультиграфов FO и FI совпадают.

17.2.4 Вопросы для контроля к п. 17.2.3

  1. Какие формы представления графов вы знаете? Приведите примеры.

  2. Какие матричные представления графов вы знаете?

  3. Чем отличаются матричные представления неорграфа и орграфа?

  4. В чем заключается достоинство и недостаток матрицы смежности?

  5. Как задаются веса вершин и ребер (дуг) при матричной форме задания графа?

  6. Какие векторные формы представления используются в теории графов? Как при такой форме можно задать веса вершин и ребер (дуг) графа?

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