Алгоритм вырезания соцветий — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м (Новая страница: «== Паросочетание в недвудольном графе== {{Определение |definition= Паросочетание в недвудольном …»)
 
м (Паросочетание в недвудольном графе)
Строка 9: Строка 9:
 
{{Определение
 
{{Определение
 
|definition= Дополняющая цепь - чередующаяся цепь, у которой оба конца свободны.}}
 
|definition= Дополняющая цепь - чередующаяся цепь, у которой оба конца свободны.}}
 +
{{Определение
 +
|definition= Соцветие <tex>B</tex> графа <tex>G=(V,E)</tex> - цикл, состоящий из <tex>2k + 1</tex> ребер, из которых только <tex>k</tex> входят в соцветие <tex>M</tex>}}
 +
{{Определение
 +
|definition= Cжатие соцветия - граф <tex>G'</tex>, полученный из <tex>G</tex> сжатием соцветия в одну псевдо-вершину}}
 +
 +
== Теорема Эдмондса ==
 +
 +
{{Теорема
 +
|statement=
 +
В графе <tex>G'</tex> существует увеличивающая цепь тогда и только тогда, когда существует увеличивающая цепь в <tex>G</tex>
 +
|proof=
 +
<tex>\Rightarrow</tex>
 +
 +
 +
<tex>\Leftarrow</tex>
 +
 +
}}
 +
 +
==Алгоритм==
 +
Пусть дан произвольный граф <tex>G(V, E)</tex> и требуется найти максимальное паросочетание в нём. <br>
 +
Для построения алгоритма по [[Теорема о максимальном паросочетании и дополняющих цепях|теореме Бержа]] нужно уметь находить дополняющую цепь.

Версия 21:54, 23 декабря 2010

Паросочетание в недвудольном графе

Определение:
Паросочетание в недвудольном графе - произвольное множество ребер недвудольного графа, такое, что никакие два ребра не имеют общей вершины. Обозначается паросочетание как [math]M[/math].


Определение:
Вершины графа, инцидентные ребрам [math]M[/math], называются покрытыми, а неинцидентные - свободными.


Определение:
Чередующаяся цепь - путь в графе, для любых двух соседних ребер которого выполняется, что одно из них принадлежит паросочетанию [math]M[/math], а другое нет.


Определение:
Дополняющая цепь - чередующаяся цепь, у которой оба конца свободны.


Определение:
Соцветие [math]B[/math] графа [math]G=(V,E)[/math] - цикл, состоящий из [math]2k + 1[/math] ребер, из которых только [math]k[/math] входят в соцветие [math]M[/math]


Определение:
Cжатие соцветия - граф [math]G'[/math], полученный из [math]G[/math] сжатием соцветия в одну псевдо-вершину


Теорема Эдмондса

Теорема:
В графе [math]G'[/math] существует увеличивающая цепь тогда и только тогда, когда существует увеличивающая цепь в [math]G[/math]
Доказательство:
[math]\triangleright[/math]

[math]\Rightarrow[/math]


[math]\Leftarrow[/math]
[math]\triangleleft[/math]

Алгоритм

Пусть дан произвольный граф [math]G(V, E)[/math] и требуется найти максимальное паросочетание в нём.
Для построения алгоритма по теореме Бержа нужно уметь находить дополняющую цепь.