匈牙利算法的优缺点?
匈牙利算法是一种在多项式时间内求解任务分配问题的组合优化算法。
匈牙利算法是一种组合优化算法,它是解决多项式时间复杂度问题的较快方法。
1.从每一行中找到最小元素,然后从该行的所有元素中减去该值;
2.从每列中找到最小元素,然后从该列中所有元素中减去该值;
3.令m =覆盖表中所有零所需的最小行数;
4. while(m!=覆盖表中所有零所需的最小列数)
从发现的元素中找到最小的元素
从所有其他未发现的元素中减去该元素
将此元素添加到线条相交的元素中
寻找新的
5.使用零来分配可能的组合,即:只要存在零,就可以分配任务;
6.找到最低成本;
7.结束。
0