匈牙利算法是壹種組合優化算法,它是解決多項式時間復雜度問題的較快方法。
1.從每壹行中找到最小元素,然後從該行的所有元素中減去該值;
2.從每列中找到最小元素,然後從該列中所有元素中減去該值;
3.令m =覆蓋表中所有零所需的最小行數;
4. while(m!=覆蓋表中所有零所需的最小列數)
從發現的元素中找到最小的元素
從所有其他未發現的元素中減去該元素
將此元素添加到線條相交的元素中
尋找新的
5.使用零來分配可能的組合,即:只要存在零,就可以分配任務;
6.找到最低成本;
7.結束。