班上有N
名学生,有N
个座位。学生只会坐在他偏好的座位上。问题是要找到完全有效的安排。例如:有{{{ 1}}学生有4
个席位,学生a有pref席位4
,学生b更喜欢座位号[1,4]
。同样,学生c更喜欢[4]
而学生更喜欢座位[2,3,4]
。现在只有一种可能的安排是[3]
。现在可以通过回溯和贪婪的方法来完成,通过为第一批学生分配只有一个选择的座位等等但是大的{ {1}}这种方法很昂贵。是否有其他方法可以解决这类问题?
我使用最大二分匹配来查看N个学生是否可以坐下来:
dict[b]=4,dict[a]=1,dict[d]=3 and dict[c]=2