试题:一个班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<Integer> glist=new ArrayList<Integer>();
for(int i=0;i<num;i++){
glist.add(i+1);
}
for(int i=0;i<num/8;i++){
for(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());
}
}