我需要创建一个算法,其中我有两个不等大小的列表,称为学生和教师。学生比教师多得多。我需要为每个学生创建一个配对,每个教师与大约相同数量的学生匹配。
复杂的是我有一系列不可接受的配对。具体而言,每个学生可能有一个或多个教师,他无法与之配对。
我知道我可以做一个非常有效的贪婪算法,它只是随意开始匹配并跳过不起作用的匹配,因为分配给每个教师的学生数量不一定是准确的。无论如何,我希望有一种有效而完整的方法来做到这一点。感谢您提供的任何建议!
答案 0 :(得分:1)
我会从最有限的匹配开始到较少限制,这将留下无限匹配最后,你可以使用它们来平衡。