
- •22 Лекция № 21. Связность графов и фундаментальные циклы и разрезы графа
- •Алгоритм определения компонент сильной связности орграфа
- •22.2.3 Определение компонент связности
- •22.2.4 Вопросы для контроля к п. 22.2.1
- •22.3 Остов графа
- •22.3.1 Нахождение остова минимальной длины
- •22.3.2 Фундаментальные циклы
- •22.3.3 Фундаментальные разрезы
- •20.3.4 Вопросы для контроля к п. 22.3
22 Лекция № 21. Связность графов и фундаментальные циклы и разрезы графа
Продолжительность:2 часа (90 мин.)
22.1 Ключевые вопросы
22 Лекция № 21. Связность графов и фундаментальные циклы и разрезы графа 1
22.1 Ключевые вопросы 1
22.2 Текст лекции 1
22.2.1 Связность графов 1
22.2.2 Определение компонент сильной связности орграфа 1
22.2.3 Определение компонент связности 4
22.2.4 Вопросы для контроля к п. 22.2.1 7
22.3 Остов графа 7
22.3.2 Фундаментальные циклы 8
22.3.3 Фундаментальные разрезы 9
20.3.4 Вопросы для контроля к п. 22.3 11
22.2 Текст лекции
22.2.1 Связность графов
При исследовании графов возникает два вида задач на связность:
определение компонент связности графа,
определение компонент сильной связности орграфа.
Второй вид задач имеет смысл только для орграфов, так как связный неорграф всегда сильно связен. Однако, как будет видно из дальнейшего, алгоритм определения компонент сильной связности орграфа, оказывается пригоден и для решения задач первого вида для неорграфов.
22.2.2 Определение компонент сильной связности орграфа
Подграф G’ орграфаG(V,E) называется максимальным сильно связным, если не существует сильно связного подграфаG”, строго содержащегоG’.
Максимальные сильно связные подграфы орграфа Gназываются его компонентами сильной связности.
Вершины компонент сильной связности образуют множество классов эквивалентности C, |C| =pтак, что
Принадлежность вершины xi классуCxiопределяется наличием маршрутов (xi, xj) и (xj, xi) для любой пары вершин.
Таким образом, компонента сильной связности – множество взаимно достижимых вершин орграфа.
Определим транзитивное замыкание в графе для вершиныxi
,
где
–
множество вершин графа, достижимых изxi
за один шаг,
–
множество вершин графа, достижимых изxiза два шага и т. д.
– это не что иное, как объединение
вершиныxiсо множеством ее потомков.
Определим обратное транзитивное замыкание в графе для вершины xi
,
где
–
множество вершин графа, из которыхxiдостижима за один шаг,
–
множество вершин графа, из которыхxiдостижима за два шага и т.д.
– это не что иное, как объединение
вершиныxiсо множеством ее предков.
Если в компонентах сильной связности графа Gобъединить маршруты (xi, xj) и (xj, xi), то образуются циклы, характерной особенностью которых является то, что в них каждая вершина для себя и потомок и предок.
Поэтому для компонент сильной связности справедливо
,
где Cxi– класс эквивалентности.
Вершины источники не имеют предков, тупиковые вершины не имеют потомков, а изолированные вершины не имеют ни предков, ни потомков, поэтому каждая из таких вершин образует свой класс сильной связности (и их можно исключить из дальнейшего рассмотрения в момент предварительного анализа графа).
Формальными признаками наличия таких вершин являются:
для источников – отсутствие 1 в столбце матрицы смежности,
для тупиковых вершин – отсутствие 1 в строке матрицы смежности,
для изолированных вершин – отсутствие 1 как в строке, так и в столбце матрицы смежности.
После исключения вершин источников и тупиковых вершин в графе снова могут образоваться вершины таких же типов, с ними следует поступить аналогично.
На основании вышеизложенного можно составить такой алгоритм определения компонент сильной связности орграфа.