一个班有60个人,要分成10个组做实训,假设java实训吧
以前基本都是自愿结组,然后做实训现在想用程序实现自动分组功能。每个人登录系统后,挑选6个自己比较中意的同学(就是想和Ta一组),和3个(或更少)比较讨厌的同学(尽量不和Ta一组)收集到这些同学的意愿信息后(假设是数据库形式)用一定的算法协调这些人,分成10个组,原则是尽量让每个人满意,并且不能和自己讨厌的人在一组。