@qq290637843
2021-01-30T04:47:04.000000Z
字数 1303
阅读 419
考虑两个大小为的点集和,两个集合之间有一完全二分图,边具有边权。下文中所有都是指中的点,都是指的中的点。
最小权匹配首先就有一个算法是KM算法,其思路如下:考虑求一组点权以及满足:
现在依旧考虑是要求出一组点权以及满足,且的边构成的子图要有完美匹配。
LAPJV的做法是:每次选择一个未匹配的,按照作为长度(这说明这次不限制只走的边),只走交错路,运行狄克斯特拉,求出最短增广路,长度设为,并且顺带存下求出最短增广路之前到所有的距离(就是说,如果,则在之后不会再用到)。接着,开始改点权以及增广:将所有的中点的分别减掉,这个操作不会导致,但可能导致已经匹配的边不再满足相等性。接着,沿着最短增广路增广,得到新的匹配,再接着,由于此时新匹配不一定每条边都满足相等性,那就把所有匹配边上的的增大到让匹配边满足相等性为止。请自行证明这样增加之后,不会被破坏。于是一共执行次增广,每次增广消耗运行狄克斯特拉,并消耗改点权,总计。