最佳二分图匹配算法(总结)

EK算法     O(n*e^2)

通过调整加权完全二分图的可行顶标,将加权完全二分图转化为无权二分图,使得加权完全二分图的最佳匹配与转化后的无权二分图的最佳匹配相同,在此基础上采用匈牙利算法。

最小费用最大流算法    O(n*e)

将带权二分图转化为相应的网络流图,

1)构建源点s跟汇点t

2)对于i\inX,建立一条容量为1,费用为0的有向边(s,i).

3)对于j\inY,建立一条容量为1,费用为0的有向边(j,t).

4)对于E中的每一条边(i,j)(i\inX,j\inY),建立一条容量为1,费用为该边所对应权值的有向边(i,j)。

容易看出,网络流D的最小费用最大流,恰好使X,Y中的节点两两配对起来,对应着二分图的最佳匹配。

猜你喜欢

转载自blog.csdn.net/qq_40679299/article/details/81134474