我想找出一种方法,把人们按喜好分类。
例如,假设有100名学生将被分配给五个班中的一个:
每个学生都有三个优先班,按优先顺序排列。什么是最好的方法来划分学生,使尽可能多的人得到他们的第一和第二选择课程,同时确保没有班级有太多的学生的房间。
我已经考虑过用以下方法来处理它:
虽然我觉得这是一个合理的实现,但我想知道是否还有其他算法可以更好地解决这个问题。我试着到处寻找,但找不到任何能解决这类问题的方法。
发布于 2013-05-01 06:52:01
根据您的描述,这听起来非常像稳定婚姻问题的变体之一。

查看Wiki链接,您将看到Gale-Shapley算法的描述,这是一个很好的解决方案。

https://stackoverflow.com/questions/16313591
复制相似问题