mshd.net
当前位置:首页 >> C#如何生成一个不重复随机数组 >>

C#如何生成一个不重复随机数组

随机产生数组的下标,不直接产生数,我举随机产生0~9的随机数 int[] num = new int[10]; int[] newNum = new int[10]; int i,r = 9; int n; int tmp; Random rand = new Random(); for (i = 0; i < 10; i++)//初始化这个数组,0~9 { num[i] = i;...

考虑到算法效率~你其实可以用另一种方式来实现~ 先生成一个1-15按顺序的数组 然后生成随机变量种子~ 每次取一个在数组长度内的随机数 然后取出对应的数值并放到另一个数组中 而存的那十五个数值的数组则把该数值去除~这样十五次就能得到了~ 代码...

使用Guid的哈希码作为种子值,就不会重复了,代码如下: public class RandomHelper { /// ///生成制定位数的随机码(数字) /// /// /// public static string GenerateRandomCode(int length) { var result = new StringBuilder(); for (var i...

string temp = ""; //临时容器 int n =0; Random rd = new Random(); while(n =0) //判断容器里面有没有刚产生的数 { n = n; // 已经有了就重新执行循环 } else { temp += num.ToString();//没有将新产生的数装进容器 Console.WriteLine(num.ToS...

不用数组?好吧。 楼主大概是想搞个发牌程序? class Program { static void Main(string[] args) { List numbersToSelect = new List(); for (int i = 0; i < 100; i++) { numbersToSelect.Add(i); } for (int j = 99; j >= 0; j--) { Random r...

这个问题在CSDN、StackOverFLow上都有相关内容,最后的结论是同样的,即: “随机数 和 不重复 是相悖的两个概念”。因此这个问题理论上无解。 随机数,(一般C#中)指的是随机生成的一个整型或者浮点型数字。 不重复,指的是在一个数组中,每个元...

思路为每次随机生成一个数,把该数存储在一个数列中,再把下一次随机生成的数和数列中的数相比,如果在数列中则重新生成,如果不在数列中则把该数添加进数列中,直到所有数都生成为止。 public List GenerateRandomNumber(int min,int max,int n...

你这个问题有歧义诶,到底是 把数随机插入到数组中,还是 在数组中插入的1~100随机数 楼上是第一个,结果b数组值为1~100排序的数。 下面是第二个,结果数字是随机的,但插入是顺序插入的代码如下: int[] arr = new int[100]; Random r = new Ra...

illisecond其实都是一样的 所以随机数也一样 楼上的也不对,那是没区别 你可以用下面办法试试看 System.Random a= new Random(System.DateTime.Now.Millisecond+i); +个i,让种子每次都不一样

有两种思路:1、随机生成一个1-100的数,然后判断重复,如果重复再生成一次; 2、创建一个数组,元素内容为1-100,对元素随机排序。 请参考下面的代码 public void GenerateRandomNums() { List list = new List(); Random rand = new Random();...

网站首页 | 网站地图
All rights reserved Powered by www.mshd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com