该问题为产生不重复的随机数序列,形象点就是一副扑克牌中随机抽取N张。
摘自:不重复随机数列生成算法
改了一部分
/**
* 从0-max随机选N个数出来
* **/
public static int[] GetRandomSequence2(int max,int N)
{
int[] sequence = new int[max];
int[] output = new int[N];
for (int i = 0; i < max; i++)
{
sequence[i] = i;
}
Random random = new Random();
int end = max-1;
for (int i = 0; i < N; i++)
{
int num = random.nextInt(end);
output[i] = sequence[num];
sequence[num] = sequence[end];
end--;
}
return output;
}