转载自http://blog.csdn.net/devfun/article/details/6534476
产生N个不重复的随机数的快速算法
int startArray[] = {0,1,2,3,4,5,6,7,8,9};//seed array int N = 10;//随机数个数 int resultArray[] = new int [10];//结果存放在里面 for(int i = 0; i < N; i++) { int seed = random(0, startArray.length - i);//从剩下的随机数里生成 resultArray[i] = startArray[seed];//赋值给结果数组 startArray[seed] = startArray[startArray.length - i - 1];//把随机数产生过的位置替换为未被选中的值。 } 博主牛逼啊,怎么想到这个算法的,值得学习
转载请注明原文地址: https://ju.6miu.com/read-1303126.html