• ## 随机分组

千次阅读 2018-10-12 16:37:10
根据人数或组数随机分组 student:一个班中所有学生的信息存入List,算出组数或人数,在List.size()中Random随机选int,取出依据index存入组,List中remove. for(组group){ for(人数people){ 人存入组 } } @Override//...
根据人数或组数随机分组
student:一个班中所有学生的信息存入List,算出组数或人数,在List.size()中Random随机选int,取出依据index存入组,List中remove.
for(组group){
for(人数people){
人存入组
}
}
@Override//输入组数
public List randomByGroup(String claid, int group) {
List<Student> student = studentDao.selectByClaId(claid);
int people = 0;
int remain = 0;
if (group != 0) {
people = student.size() / group;
if (student.size() % group != 0) {
remain = student.size() % group;
}
}else{
log.error("小组不能为0");
}
List gro = new ArrayList();
for (int i = 0; i < group; i++) {
//            数据库生组,给学生set组
StudentGroup studentGroup = new StudentGroup();
studentGroup.setName("第"+(i+1)+"组");
studentGroup.setClaId(claid);
StudentGroup s =save(studentGroup);
String groId = s.getId();//生成小组的id
List grostu = new ArrayList();
Random r = new Random();
grostu.add("第"+(i+1)+"组");
for (int j = 0; j < people; j++) {
int n = r.nextInt(student.size());//[0,size)中随机取int
grostu.add(student.get(n).getName());
Student st = new Student();
st.setGroId(groId);
st.setId(student.get(n).getId());
studentDao.update(st);
student.remove(n);
}
if(remain!=0){
int n = r.nextInt(student.size());
grostu.add(student.get(n).getName());
student.remove(n);
Student st = new Student();
st.setGroId(groId);
st.setId(student.get(n).getId());
studentDao.update(st);
remain -=1;
}
gro.add(grostu);
}
return gro;
}

@Override//输入人数
public List randomByPeople(String claid, int people) {
List<Student> student = studentDao.selectByClaId(claid);
int group = 0;
if (people != 0) {
group = student.size() / people;
if (student.size() % people != 0) {
group +=1;
}
}else{
log.error("人数不能为0");
}
List gro = new ArrayList();
for (int i = 0; i < group; i++) {
//            数据库生组,给学生set组
StudentGroup studentGroup = new StudentGroup();
studentGroup.setName("第"+(i+1)+"组");
studentGroup.setClaId(claid);
StudentGroup s =save(studentGroup);
String groId = s.getId();//生成小组的id
List grostu = new ArrayList();
Random r = new Random();
grostu.add("第"+(i+1)+"组");
for (int j = 0; j < people; j++) {
if(student.size()==0){
break;
}
int n = r.nextInt(student.size());//[0,size)中随机取int
grostu.add(student.get(n).getName());
Student st = new Student();
st.setGroId(groId);
st.setId(student.get(n).getId());
studentDao.update(st);
student.remove(n);
}
gro.add(grostu);
}
return gro;
}



展开全文
• ## python 随机分组

千次阅读 2019-06-23 10:27:56
#列表随机分组 from random import shuffle list = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "...
列表随机分成n组，每len/n个一组

#列表随机分组
from random import shuffle
list = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37"]
shuffle(list) #重排序
n = 3 #分成n组
m = int(len(list)/n)
list2 = []
for i in range(0, len(list), m):
list2.append(list[i:i+m])
print(list2)


展开全文
• Cpp编写的随机分组，里面自带测试文档。 用Cpp主要是因为读写文档方便。
• 一款简单易行的实验动物随机分组软件 很不错
• ## java随机分组

千次阅读 2016-01-06 11:15:32
java随机分组
java随机分组
最近查看blog看着大家不少把自己工作的总结发上来，大家一起总结学习，所以小弟也把工作的一些经验与总结发上来，希望对新人有些帮助。大家互相交流。
package test;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
// 分组数
int zushu = 2;

int[] l = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
// 要随机分组的数组打乱顺序后得到的列表
List<Integer> list = new ArrayList<Integer>();
while (list.size() < l.length) {
int rand = (int) (Math.random() * l.length);
if (list.contains(l[rand])) {
continue;
}
list.add(l[rand]);
}
// 总数除以分组数得到的余数（这个要放到第一组）
int yushu = list.size() % zushu;
// 每组成果的个数
int geshu = (list.size() - yushu) / zushu;
// System.out.println("余树"+yushu);
// System.out.println("每个组的个数"+geshu);
// 分组后的列表（列表里装的列表）
List<List> a = new ArrayList();
// 起始值（为了取每个分组后的组的值）
int c = 0;
// 小组个数起始值
int b = 1;
for (int i = 0; i < zushu; i++) {
List s = new ArrayList();
for (int j = c; j < geshu * b; j++) {
s.add(list.get(j));
c++;
}
a.add(s);
b += 1;
}
// 把余数放到第一个组里
if (a != null && !a.isEmpty()) {
for (int i = 0; i < yushu; i++) {
a.get(0).add(list.get(list.size() - (yushu - i)));
}
}
System.out.println(a.get(0));
System.out.println(a.get(1));
}
}


展开全文
• 随机分组,可以自定义总成员个数..自定义每组成员个数
• 输入总人数N和分组数n，即可进行随机分组（如果N不是n的整数倍，则n个小组中的人数会不相同）
• asp中实现随机分组程序的代码
• 试题：一个班40个学生，请把学生随机分成8组既然是随机分组，必然用到随机数，其分组思路是： 用一个链表存储这组数，随机获取A中的元素下标，然后打印这个数，并从A中移除，直到A中全部为空import java.util....
试题：一个班40个学生，请把学生随机分成8组既然是随机分组，必然用到随机数，其分组思路是： 用一个链表存储这组数，随机获取A中的元素下标，然后打印这个数，并从A中移除，直到A中全部为空import java.util.ArrayList;import java.util.Scanner;public class Group {public static int GetNum(){Scanner s=new Scanner(System.in);System.out.print("请输入一个偶数:");int n=Integer.parseInt(s.nextLine());return n;}public static void Grouping(int n){int num=n;ArrayList glist=new ArrayList();for(int i=0;iglist.add(i+1);}for(int i=0;ifor(int j=0;j<8;j++){int r=(int)(Math.random()*glist.size());System.out.print(glist.get(r)+"   ");glist.remove(r);}System.out.println();}}public static void main(String[] args) {Grouping(GetNum());}}
展开全文
• 随机分组代码，但是比较局限。输入分组人数和需要分的组数即可，暂时不能支持不平均分组。
• 简单初级的人员随机分组及抽签工具及源码，由VS2010编写，可用于人员随机分组和人员随机顺序抽签。抓阄分组。
• WinForm_随机分组,随机分组软件,用于进行随机分组...
• 随机分组之后的随机排序，随机分组之后的随机排序，随机分组之后的随机排序
• 实验对象随机分组程序实验室小鼠随机方法老师上统计课的时候讲了实验室对实验小鼠进行随机分组的方法。 统计学随机分组
• 利用SPSS随机数轻松实现随机分组 临床研究中常需要对研究对象进行分组，分组要求客观、随机。所以我们经常要用到随机分组方法。 随机分组方法有信封法、随机数字表法，都不方便，今天我们利用SPSS产生的随机数可以...
• ## C语言实现随机分组

千次阅读 2018-07-18 20:53:32
掌握随机分组的精要，个人最觉得是要知道并了解到 srand() 函数 与 rand() 函数，并了解到如何将已经存在的顺序给打乱掉，即实现它的乱序。 其中，rand函数在产生随机数前，需要系统提供的生成伪随机数序列的种子，...
• 想为班级的学生随机分组吗？想随机找一个人起来回答问题吗？ 现在利用EXcel可以很好地解决这个问题了，只要你输入班级的学生名单就可以了。
• 具有随机分组丢失的连续时间定向复杂动态网络的状态估计
• 随机分组程序 #include&lt;stdio.h&gt; #include&lt;string.h&gt; #include&lt;time.h&gt; #include&lt;stdlib.h&gt; int main() { char *name[]={"曾从威","蒋...
• 要求将下列名单随机分组：分组要求，随机选择4个人组成一组 输出结果：４个人一行进行输出，每行代表一个组 例如： 许新华 王玉恒 陶小康 王娇娇 盛 开 郑 丹 陈 芳 张 龙 陈梦玉 祝秋培 吴赟鹏 胡光兴 曾从威 边...
• 用VB制作的一个随机分组工具，简单方便，可自定义要分组的名单（只需在文本文件中按行输入名字即可）。
• 现在很多场景下都需要对现有人员进行随机分组，比如老师对班上的同学进行随机分组，以小组形式完成一项作业；再比如公司户外团建活动，对员工进行随机分组，组队玩游戏等等。今天给大家分享的就是一个随机分组案例，...
• 基于自适应GOP随机分组的三维小波变换算法，孙建坡，，针对视频序列中的低压缩比和时间延时，在固定帧分组三维小波变换算法的基础上提出了自适应GOP随机分组的三维小波变换算法，与以往
• //随机分组相关 //结合List的remove()方法//及Random.next() 动态的取出新的List索引实现随机分组

...