1 Отредактировано NotImplemented (2010-09-07 03:18:32)

Тема: Max Matching - Edmonds

>Единственная тонкость — при проверке, что эту вершину мы ещё не посещали, надо смотреть не в массив used, а в массив p — именно он заполняется для посещённых нечётных вершин. Если мы в вершину  ещё не заходили, и она оказалась ненасыщенной, то мы нашли увеличивающую цепь, заканчивающуюся на вершине , возвращаем её.

Можно пояснить, почему нельзя использовать used?

Re: Max Matching - Edmonds

NotImplemented пишет:

>Единственная тонкость — при проверке, что эту вершину мы ещё не посещали, надо смотреть не в массив used, а в массив p — именно он заполняется для посещённых нечётных вершин. Если мы в вершину  ещё не заходили, и она оказалась ненасыщенной, то мы нашли увеличивающую цепь, заканчивающуюся на вершине , возвращаем её.

Можно пояснить, почему нельзя использовать used?

У меня есть предположение, что поиск может придти в вершину цветка - в таком случае вершина будет помечена как used, но previous будет равно -1. В таком случае возможно увеличение пути (аугментация), используя часть пути цветка.

3

Re: Max Matching - Edmonds

Да-да, но кажется, что аналогичная ситуация может быть не только с корнем цветка, а с любой четной его вершиной.