Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 3000311.doc
Скачиваний:
10
Добавлен:
30.04.2022
Размер:
1.68 Mб
Скачать

Алгоритм нахождения сильных компонент графа

Шаг 1. G – данный граф. Для G построить матрицу достижимости R. Получить матрицу контрдостижимости Q=RT.

Шаг 2. Положить С=RQ, где  – поэлементное умножение матриц.

Шаг 3. Преобразовать матрицу С к блочно-диагональ-ному виду путем перестановки строк и столбцов. Каждая из диагональных подматриц соответствует сильной компоненте графа G. Останов.

Граф G*=(X*,V*) определяется так: каждая его вершина представляет множество вершин некоторой сильной компоненты графа G, дуга (xi*, xj*) существует в G* тогда и только тогда, когда в G существует дуга (xi, xj), такая, что xi принадлежит ком­поненте, соответствующей вершине xi*, а xj компоненте, соответствующей вершине xj*. Граф G* называют конденсацией графа G.

Пример решения задачи

Для графа построить матрицу смежности, матрицу инцидентности; получить матрицу достижимостей; найти сильные компоненты и построить граф конденсации.

Решение. Матрица смежности графа имеет вид:

Матрица инцидентности графа имеет вид:

Построим матрицу достижимостей R. Для этого найдем множества достижимостей для каждой вершины графа по формуле (1), используя матрицу смежности А.

Матрица достижимостей графа примет вид:

Найдем сильные компоненты графа. Матрица контрдостижимостей Q=RT

Получим матрицу С, осуществив поэлементное умножение матриц R и Q. Матрица С примет вид:

Преобразуем полученную матрицу C к блочно-диагональному виду. Поменяем местами 1-й и 3-й столбцы матрицы.

Поменяем местами 1-ю и 3-ю строчки матрицы, получим

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

.

Построим граф конденсации, вершинами которого сильные компоненты графа, т. е.

. Так как в исходном графе существует дуга (x2, x1), то в графе конденсации будет дуга, связывающая вершины . Дуга (x2, x3) позволяет сформировать дугу ( ) графа конденсации. Дуга (x3, x4) позволяет сформировать дугу ( ) графа конденсации. Граф конденсации исходного графа примет вид (рис. 7):

Рис. 7

Задание 4

Для графа построить матрицу смежности, матрицу инцидентности; получить матрицу достижимостей; найти сильные компоненты и построить граф конденсации.

Варианты

1

11

2

12

3

13

4

14

5

15

6

16

7

17

8

18

9

19

10

20