原址:https://blog.csdn.net/siss0siss/article/details/51325656
資料寫的不完善叹括,本篇文章較詳細(xì)友善誊锭。
匈牙利解法:
總的來說柠新,以下解法就是利用了上面的算法竿音,得到一個(gè)可以在每一行找到獨(dú)立的0系數(shù)镰烧。
過程
一乔询、做減法(歸約):
行歸約:每行元素減去該行最小元素谎砾。
列歸約:每行元素減去該行最小元素逢倍。
歸約順序無所謂,目的就是把所有的數(shù)盡可能化的很小景图,但最小的數(shù)不能為負(fù)數(shù)
二较雕、圈零劃零
找到含零元素最少的行,對(duì)零元素打圈挚币,劃去打圈零元素所在行和列存在的零元素亮蒋,重復(fù)這個(gè)步驟,直到矩陣中所有的零元素都被處理完妆毕。
三慎玖、打勾劃線
四、調(diào)整量的加減
五设塔、圈零畫零凄吏,檢查圈零元素?cái)?shù)量
如果仍然不是最優(yōu)解,再重復(fù)上述步驟闰蛔。