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;...

C#有随机器Random,可以生成数字。代码一般这样: Random rand = new Random(); //这个是当前时间作为随机种子,生成的数字有可能重复,机率校 rand.Next(1, 10000);生成1与10000之间的int 如果想重复的机率小一些,就给Random()一个种子 long ...

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

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

private string RndomStr(int codeLength) { //组成字符串的字符集合 0-9数字、大小写字母 string chars = "0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f,g,h,i,j,k,l,m,n,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,P,P,Q,R,S,T,U,V,W,X,Y,Z"; st...

思路:可以用随机数加时间的方法,这样绝对不会重复

//先声明一个数组,并将1~54按顺序插入到数组中。 int[] indexs = new int[54]; for (int i = 0; i < 54; i++) { indexs[i] = i + 1; } //声明一个新数组,这个数组为结果数组 int[] result = new int[54]; Random r = new Random(); int site =...

要不重复的话,就用GUID类把 Guid g = Guid.NewGuid(); //创建一个Guid的对象 Console.WriteLine(g.ToString());//然后ToString() 你用控制台输出看看,这种随机产生的十六进制数字,会重复的几率几乎没有。

private string CreateRandomCode(int codeCount) { string allChar = "0,1,2,3,4,5,6,7,8,9"; string[] allCharArray = allChar.Split(','); string randomCode = ""; int temp = -1; Random rand = new Random(); for (int i = 0; i < 13; i++...

程序没有错,感觉可以更精简些。 Random rd = new Random();//随即初始化 int[] ar = new int[10];//10个整数的数组 int seti = 11; for (int i = 0; i < seti - 1; ) { int temp = rd.Next(seti);//生成随机数 if (ar.Where(e => e == temp).Co...

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