生成不重复随机数
2010-03-04 22:41
344 查看
有一次需要生成N序列的不重复数字,最直观的理解就是不断生成一个小于N的随机数S,然后放入一个int
中:
1.当S不存在于int
中时,将S添加到int
中。
2.否则,重新生成S。
中:
1.当S不存在于int
中时,将S添加到int
中。
2.否则,重新生成S。
Random random = new Random(); int[] mat = new int[num]; int i, p=0, tmp=0; for(i=0;i<num;i++) mat[i] = i; for (i = num-1; i >= 0;i-- ) { p = random.Next(0, i); tmp = mat[p]; mat[p] = mat[i]; mat[i] = tmp; }
相关文章推荐
- uuid生成12位随机数 不重复
- PHP 生成N个不重复的随机数
- 随机生成1000w内不重复的随机数
- JS生成不重复随机数
- 一个提高随机数不重复概率的种子生成方法
- ios 生成不重复随机数
- 生成不重复随机数,int转 TCHAR 打印输出
- 生成 [0-n) 个不重复的随机数
- Python根据上下限生成不重复随机数1
- 用C#生成不重复的随机数
- java 生成一组不同的随机数(不重复)
- C#生成不重复随机数的两个函数
- Java 生成任意位数永不重复的随机数策略实现
- C++生成不重复的随机数
- C# Random循环生成随机数重复问题解决方案
- 运用简单的bloomfilter算法生成100万个不重复的随机数
- 生成不重复的随机数对(C/C++)
- Java生成随机数,几千年不重复哦
- 最简单的随机数不重复列表生成
- java中随机生成随机数及不重复的随机数字