2012-11-12 192 views
3

有一組9名學生和3所學校每所學校可以分配最多3名學生。每個學校和學生都有它的座標。現在我們必須以這樣的方式分配學生,使得距離所有學校到學校的學生應該是最低限度的。最小距離

我在接受採訪時被問到了這個問題。誰能爲此提出一個算法?

最初我嘗試了貪婪的方法,但沒有奏效。然後我嘗試應用動態編程方法,但無法提出最佳的子結構。

+3

手頭的問題被稱爲匹配 – RobAu

+0

您能否提供關於二分圖匹配一些很好的閱讀材料二分圖。 – Avinash

+0

這本書很好,但可能太理論了:[「MD匹配理論」,L.Lovász](http://books.google.ru/books/about/Matching_Theory.html?id=mycZP-J344wC&redir_esc=y) 。 –

回答

4

每所學校有3個地方,全部3所學校有9個地方。你應該找到9個地方和9個學生之間的最佳匹配。

此作業問題可以用Hungarian algorithm解決。

1

由於問題規模足夠小,徹底搜索如何?

  • 第一所學校選擇9名中的3名學生開始。
  • 第二學校從剩餘的6箇中選擇3個學生。
  • 最後一所學校被剩下的3名學生卡住了。

所以(9 choose 3) * (6 choose 3) = 1680

+0

我正在尋找一個有效的解決方案。 – Avinash