我想制作一个可以为我班制定座位计划的程序。我想要它,以便每个学生都可以按优先顺序提交对座位成员的偏好,最后,每个学生都尽可能满意。我更倾向于这样一种情况,即两个学生对一个人完全满意,而另一个人完全不满意。
是否有某种算法可以有效地解决这个问题? 例如,我有四个相邻的表:▀▀▀▀和四个学生: Alice , Bob , Chris 和 Dan
Alice 和 Bob 都想坐在 Chris 旁边,但 Chris 想坐在丹。此外, Alice 还希望不要坐在 Bob 或 Dan 旁边。 Dan 不关心。
在这个简单的例子中,并非所有愿望都能得到满足,但由于 Alice '第二个愿望不是坐在 Bob 或 Dan ,也不能满足,她的第一个愿望将被使用,并且 Chris '不被考虑。分布看起来像这样: 爱丽丝,克里斯,鲍勃和丹