Алгоритм вырезания соцветий — различия между версиями
Kot (обсуждение | вклад) (→Теорема Эдмондса) |
Kot (обсуждение | вклад) м (→Теорема Эдмондса) |
||
| Строка 17: | Строка 17: | ||
|proof= | |proof= | ||
Пусть граф <tex>G'</tex> - граф, полученный <tex>G</tex> сжатием соцветия <tex>B</tex> в псевдо-вершину <tex>B'</tex>.<br /> | Пусть граф <tex>G'</tex> - граф, полученный <tex>G</tex> сжатием соцветия <tex>B</tex> в псевдо-вершину <tex>B'</tex>.<br /> | ||
| − | Заметим, что достаточно рассматривать случай, когда база соцветия является свободной вершиной (не принадлежащей паросочетанию). | + | Заметим, что достаточно рассматривать случай, когда база соцветия является свободной вершиной (не принадлежащей паросочетанию). В противном случае в базе соцветия оканчивается чередующийся путь чётной длины, начинающийся в свободной вершине. Прочередовав паросочетание вдоль этого пути, мощность паросочетания не изменится, а база соцветия станет свободной вершиной. |
<tex>\Rightarrow</tex> | <tex>\Rightarrow</tex> | ||
Версия 03:57, 26 декабря 2010
Паросочетание в недвудольном графе
| Определение: |
| Соцветие графа - цикл, состоящий из ребер, из которых только входят в соцветие . |
| Определение: |
| Cжатие соцветия - граф , полученный из сжатием соцветия в одну псевдо-вершину. |
| Определение: |
| База соцветия - вершина соцветия, в которую входит ребро не из данного соцветия. |
Теорема Эдмондса
| Теорема: |
Пусть в графе существует соцветие . Тогда в существует удлиняющий путь тогда и только тогда, когда существует удлиняющий путь в |
| Доказательство: |
|
Пусть граф - граф, полученный сжатием соцветия в псевдо-вершину .
Пусть путь является удлиняющим в графе . Если не проходит через , то тогда он будет удлиняющим и в графе .
Пусть путь является увеличивающим путём в графе . Если не проходит через , то тогда он будет удлиняющим и в графе . |
Пусть теперь путь проходит через псевдо-вершину , но не начинается и не заканчивается в ней. Тогда в есть два ребра, проходящих через , пусть это и . Одно из них обязательно должно принадлежать паросочетанию, однако, так как база цветка не насыщена, а все остальные вершины цикла цветка насыщены рёбрами цикла, то мы приходим к противоречию. Таким образом, этот случай просто невозможен. Теорема доказана.
Алгоритм
Пусть дан произвольный граф и требуется найти максимальное паросочетание в нём.
Для построения алгоритма по теореме Бержа нужно уметь находить дополняющую цепь.