Двудольные графы и раскраска в 2 цвета — различия между версиями
(→Теорема Кенига) |
|||
Строка 25: | Строка 25: | ||
Пусть ненулевой граф <tex> G </tex> связен и не имеет циклов нечетной длины. Выберем произвольно вершину <tex> u </tex> и разобьем множество всех вершин на на два непересекающихся множества <tex> U </tex> и <tex> V </tex> так, чтобы в <tex> U </tex> лежали вершины <tex> v_0 </tex>, такие что кратчайшая цепь <tex>(u, v_0)</tex> была чётной длины, а в <tex> V </tex> соответственно вершины <tex>v_1</tex>, для которых длина цепи <tex>(u, v_1)</tex> - нечётная. При этом <tex> u \in U </tex> | Пусть ненулевой граф <tex> G </tex> связен и не имеет циклов нечетной длины. Выберем произвольно вершину <tex> u </tex> и разобьем множество всех вершин на на два непересекающихся множества <tex> U </tex> и <tex> V </tex> так, чтобы в <tex> U </tex> лежали вершины <tex> v_0 </tex>, такие что кратчайшая цепь <tex>(u, v_0)</tex> была чётной длины, а в <tex> V </tex> соответственно вершины <tex>v_1</tex>, для которых длина цепи <tex>(u, v_1)</tex> - нечётная. При этом <tex> u \in U </tex> | ||
− | В графе <tex> G </tex> нет ребер <tex>ab</tex>, таких что <tex>a, b </tex> лежат одновременно в <tex> U </tex> и <tex>V</tex>. Поведем доказательство от противного. Пусть <tex>a, b \in V_0 </tex>. Зададим <tex> P_0 </tex> - кратчайшая <tex> (u, a) </tex> цепь, а <tex> P_1 </tex>- кратчайшая <tex> (u, b) </tex> цепь. Обе цепи четной длины. Пусть <tex> u </tex> - последняя вершина цепи <tex> P_0 </tex>, принадлежащая <tex> P_1 </tex>. Тогда подцепи от <tex> u </tex> до <tex> v_0 </tex> в <tex> P_0 | + | В графе <tex> G </tex> нет ребер <tex>ab</tex>, таких что <tex>a, b </tex> лежат одновременно в <tex> U </tex> и <tex>V</tex>. Поведем доказательство от противного. Пусть <tex>a, b \in V_0 </tex>. Зададим <tex> P_0 </tex> - кратчайшая <tex> (u, a) </tex> цепь, а <tex> P_1 </tex>- кратчайшая <tex> (u, b) </tex> цепь. Обе цепи четной длины. Пусть <tex> u </tex> - последняя вершина цепи <tex> P_0 </tex>, принадлежащая <tex> P_1 </tex>. Тогда подцепи от <tex> u </tex> до <tex> v_0 </tex> в <tex> P_0</tex> и <tex>P_1</tex> имеют одинаковую длину (иначе бы противоречили выбору <tex> P_0 </tex> и <tex> P_1 </tex>). А так как подцепи одинаковы, то чётность у них одинакова, а значит в сумме с ребром <tex> ab </tex> они образуют цикл нечётной длины, что невозможно. |
}} | }} | ||
== Раскраска в 2 цвета == | == Раскраска в 2 цвета == | ||
− | Так как множество вершин двудольного графа можно разделить на | + | Так как множество вершин двудольного графа можно разделить на два независимых подмножества так, что ни одна из вершин ни в одном из этих подмножеств не является смежной к вершине из этого же подмножества <tex>\Rightarrow</tex> граф <tex>G = (W,E)</tex> - 2 - раскрашиваем. <tex>\chi(G) = 2</tex>. |
+ | |||
+ | Так же, если граф 2 - раскрашиваем, значит множество его вершин можно разделить на два непересекающихся множества так, что в каждом из них не найдется двух смежных вершин, то граф является двудольным. | ||
+ | |||
Так как граф является двудольным тогда и только тогда, когда все циклы четны, определить двудольность можно за один проход в глубину. | Так как граф является двудольным тогда и только тогда, когда все циклы четны, определить двудольность можно за один проход в глубину. | ||
− | На каждом шаге обхода в глубину | + | На каждом шаге обхода в глубину помечаем вершину. Допустим мы пошли в первую вершину - помечаем её как <tex> 1 </tex>. Затем просматриваем все смежные вершины и если не помечена вершина, то на ней пометку <tex> 2 </tex> и рекурсивно переходим в нее. Если же она помечена и на ней стоит та же пометка, что и у той, из которой шли(в нашем случае <tex> 1 </tex>), значит граф не двудольный. |
− | |||
== Источники == | == Источники == |
Версия 09:25, 14 января 2012
Определение: |
Неориентированный граф | называется двудольным, если множество его вершин можно разбить на две части , так, что ни одна вершина в не соединена с вершинами в и ни одна вершина в не соединена с вершинами в .
Теорема Кенига
Теорема (Кёниг): |
Граф с конечным числом вершин является двудольным когда все циклы в графе имеют чётную длину. |
Доказательство: |
Достаточность.
Пусть ненулевой граф В графе связен и не имеет циклов нечетной длины. Выберем произвольно вершину и разобьем множество всех вершин на на два непересекающихся множества и так, чтобы в лежали вершины , такие что кратчайшая цепь была чётной длины, а в соответственно вершины , для которых длина цепи - нечётная. При этом нет ребер , таких что лежат одновременно в и . Поведем доказательство от противного. Пусть . Зададим - кратчайшая цепь, а - кратчайшая цепь. Обе цепи четной длины. Пусть - последняя вершина цепи , принадлежащая . Тогда подцепи от до в и имеют одинаковую длину (иначе бы противоречили выбору и ). А так как подцепи одинаковы, то чётность у них одинакова, а значит в сумме с ребром они образуют цикл нечётной длины, что невозможно. |
Раскраска в 2 цвета
Так как множество вершин двудольного графа можно разделить на два независимых подмножества так, что ни одна из вершин ни в одном из этих подмножеств не является смежной к вершине из этого же подмножества
граф - 2 - раскрашиваем. .Так же, если граф 2 - раскрашиваем, значит множество его вершин можно разделить на два непересекающихся множества так, что в каждом из них не найдется двух смежных вершин, то граф является двудольным.
Так как граф является двудольным тогда и только тогда, когда все циклы четны, определить двудольность можно за один проход в глубину.
На каждом шаге обхода в глубину помечаем вершину. Допустим мы пошли в первую вершину - помечаем её как . Затем просматриваем все смежные вершины и если не помечена вершина, то на ней пометку и рекурсивно переходим в нее. Если же она помечена и на ней стоит та же пометка, что и у той, из которой шли(в нашем случае ), значит граф не двудольный.
Источники
1. Асанов М. О., Баранский В. А., Расин В. В. - Дискретная математика: Графы, матроиды, алгоритмы. ISBN 978-5-8114-1068-2
2. Харари Ф. - Теория графов. ISBN 978-5-397-00622-4