Алгоритм вырезания соцветий
Паросочетание в недвудольном графе
| Определение: |
| Паросочетание в недвудольном графе - произвольное множество ребер недвудольного графа, такое, что никакие два ребра не имеют общей вершины. Обозначается паросочетание как . |
| Определение: |
| Вершины графа, инцидентные ребрам , называются покрытыми, а неинцидентные - свободными. |
| Определение: |
| Чередующаяся цепь - путь в графе, для любых двух соседних ребер которого выполняется, что одно из них принадлежит паросочетанию , а другое нет. |
| Определение: |
| Дополняющая цепь - чередующаяся цепь, у которой оба конца свободны. |
| Определение: |
| Соцветие графа - цикл, состоящий из ребер, из которых только входят в соцветие |
| Определение: |
| Cжатие соцветия - граф , полученный из сжатием соцветия в одну псевдо-вершину |
Теорема Эдмондса
| Теорема: |
В графе существует увеличивающая цепь тогда и только тогда, когда существует увеличивающая цепь в |
| Доказательство: |
|
|
Алгоритм
Пусть дан произвольный граф и требуется найти максимальное паросочетание в нём.
Для построения алгоритма по теореме Бержа нужно уметь находить дополняющую цепь.