/// <summary>
/// 从1到33中任意选取不重复的6个随机数
/// </summary>
/// <returns></returns>
public List<int> GenerateNumber1()
{
//用于保存返回的结果
List<int> result = new List<int>(6);
Random random = new Random();
int temp = 0;
//如果返回的结果集合中实际的元素个数小于6个
while (result.Count < 6)
{
//在[1,34)区间任意取一个随机整数
temp = random.Next(1, 34);
if (!result.Contains(temp))
{
//如果在结果集合中不存在这个数,则添加这个数
result.Add(temp);
}
}
//result.Sort();//对返回结果进行排序
return result;
/// <summary>
/// 从1到33中任意选取不重复的6个随机数
/// </summary>
/// <returns></returns>
public List<int> GenerateNumber2()
{
//用于存放1到33这33个数
List<int> container = new List<int>(33);
//用于保存返回结果
List<int> result = new List<int>(6);
Random random = new Random();
for (int i = 1; i <= 33; i++)
{
container.Add(i);
}
int index = 0;
int value = 0;
for (int i = 1; i <= 6; i++)
{
//从[0,container.Count)中取一个随机值,保证这个值不会超过container的元素个数
index = random.Next(0, container.Count);//谢谢热心朋友指出这里的错误
//以随机生成的值作为索引取container中的值
value = container[index];
//将随机取得值的放到结果集合中
result.Add(value);
//从容器集合中删除这个值,这样会导致container.Count发生变化
container.RemoveAt(index);
//注意这一句与上面一句能达到同样效果,但是没有上面一句快
//container.Remove(value);
}
//result.Sort();排序
return result;
}
public int[] GenerateNumber3()
{
//用于存放1到33这33个数
int[] container = new int[33];
//用于保存返回结果
int[] result = new int[6];
Random random = new Random();
for (int i = 1; i <= 33; i++)
{
container[i - 1] = i;
}
int index = 0;
int value = 0;
for (int i = 0; i < 6; i++)
{
//从[1,container.Count + 1)中取一个随机值,保证这个值不会超过container的元素个数
index = random.Next(1, container.Length-1-i);
//以随机生成的值作为索引取container中的值
value = container[index];
//将随机取得值的放到结果集合中
result[i]=value;
//将刚刚使用到的从容器集合中移到末尾去
container[index] = container[container.Length - i-1];
//将队列对应的值移到队列中
container[container.Length - i-1] = value;
}
//result.Sort();排序
return result;
}
分享到:
相关推荐
随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不重复,随机不...
在Struts+Spring+Mybatis基础上写的比较灵活的产生随机数,可以用到用户编号随机产生,其中验证了随机数不会重复产生。
Visual Studio 2005产生随机不重复的整数。
js超简单实用随机产生1-100个数字不重复
//从1到30个数中间随机产生7个数,注意不能重复,然后再从键盘上输入7个数, //对比7个数是否与随机数有相同的,如果有显示“中了几个号”, //如果中了7个号,显示一等奖;如果中了6个号,显示二等奖;如果中了5个...
VB生成不重复的随机数 我的建议是:第一步、先做一个数组,存上这35个数(可以不是连续的数,也可以是人名、字符串什么的);第二步、随机生成一个1-35之间的数,输出;第三步:把这个数和数组的第一个单元交换;第...
产生任意长度的随机数组,无重复。 任意时刻产生的数组都不相同, 保存成任意格式
1.生成四位字符、整数组成的验证码(无重复码验证) package week1; import java.util.Random; import org.omg.IOP.Codec; public class doWhile{ public static void main(String[] args){ for(int k=0;k;k++)...
NULL 博文链接:https://yizhilong28.iteye.com/blog/835190
java生成十个不重复的随机数,要求不重复
产生1~100的随机数字,方便产生数字。
java 随机产生指定长度的用户名字母 数字格式
随机产生6个不重复的随机数,并且输出到HTML页面当中
这个随机数算法可用于随机组题。java语言。
产生不同随机数,利用delphi产生不同随机数。
产生20个不重复的随机数的代码,可以在随即选题时使用
本文实例为大家分享了js取0-9随机取4个数不重复的数字的具体代码,供大家参考,具体内容如下 html <input type="button" value="随机生成4位数" onclick="f1()"> script function f1(){ var arr_4=new ...
在 JavaScript 中,一般产生的随机数会重复,但是有时我们需要不重复的随机数,如何实现?下面就来讲解三种方法产生不重复的随机数,并进行比较,看那种方法效率高。方法一 思路:首先创建一个1到3000的数组,每次取...
'产生1-10不重复的随机数 '想法: '随机1-10这十个数,不想每次都是从一到十这样随机,而是可以从任意一个数到十, '然后在循环回来到这个数,这样随机。从五开始的话,就是随机5-10,然后1-4这样随机
冒泡排序重复地遍历列表,比较相邻元素并交换位置,直到列表已排序。 虽然这个例子很简单,但它展示了Python易读性较高的语法,以及标准库强大的随机数生成功能。冒泡排序算法也是很多初学者学习排序算法的起点。 所以,...