`
PanShuiHua
  • 浏览: 31339 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
最近访客 更多访客>>
社区版块
存档分类
最新评论

随机产生指定范围内的数据并且不允许出现重复

阅读更多

那是一次难忘的活动,活动的主题是PPT PK。班上每个人把精心制作的PPT交给老师后,老师说了一句:“谁愿意先来?”台下没人响应......然后只见老师在自己笔记本上打开VS2005,顺手敲了些代码,然后从学生黑名单中文件中读取到所有人的姓名,测试一把,通过,老师面带微笑:“那我采取公平的随机原则抽到谁,谁就上来演示自己的PPT”台下的我们只能微笑加随时迎战的准备,而我在脑袋里想到刚才老师敲的那个小程序,是如何实现的呢?

如今闲着没事,回忆当时,现在是手痒痒了,<!--StartFragment --> 呵呵

import java.util.*;
public class Test
{
 public static void main(String[] args){

  //数组的值写死了,老师则是通过IO从一个文件中将名字读取到这里来
  String[] name = new String[]{"陆老大","那个什么二","张三","李四","王五","赵六","那个什么七"};
  Random rand = new Random();

  //标记数组,作用是标记name数组中那些元素已经打印了
  int[] index= new int[]{-1,-1,-1,-1,-1,-1,-1};
  int count = 0;
  for (int i = 0;true;i++) {
   int randNum = rand.nextInt(index.length);
   boolean flag = true;
   for (int j = 0; j < index.length; j++) {
    if(randNum==index[j]){
     flag = false;
    }
   }
   if(flag){
    index[count]=randNum;
    System.out.println(name[randNum]);
    if(count==(index.length-1))break;
     count++;
   }
  }
 }
}

分享到:
评论

相关推荐

    java随机抽取指定范围内不重复的n个数

    本文将详细介绍如何在Java中生成随机数以及如何随机抽取指定范围内不重复的n个数。 首先,Java提供了多种生成随机数的方法: 1. 使用`Math.random()`:这是最基础的生成随机数的方法,它返回一个0.0到1.0之间...

    生成指定随机数不重复的例子(可用)

    在编程领域,生成指定范围内的随机数而不重复是一项常见的需求,尤其在抽奖系统、密码生成或者数据模拟等场景。这个例子以Java语言为基础,提供了一种解决方案,可以在myEclipse集成开发环境中直接运行。下面我们将...

    python 在指定范围内随机生成不重复的n个数实例

    在Python编程语言中,生成指定范围内不重复的随机数是一项常见的任务,特别是在模拟、测试或者游戏开发等场景中。Python提供了强大的随机数处理模块`random`,其中的`sample()`函数可以帮助我们实现这一功能。接下来...

    java生成十个不重复的随机数

    它可以生成指定范围内的整数或浮点数。但要生成不重复的随机数,我们不能简单地连续调用`nextInt()`,因为这可能导致重复。一种有效的方法是使用`HashSet`,因为它不允许存储重复元素。 以下是一个简单的示例代码,...

    java随机抽取指定范围不重复的数字

    在Java编程中,随机抽取指定范围内的不重复数字是一项常见的需求,特别是在模拟、测试或者游戏开发等场景中。本篇将详细介绍两种常见的实现方法:使用ArrayList和使用数组。 首先,我们来看使用ArrayList的实现方式...

    双色球 红球随机取c# .net3.5应用程序

    通过实例化这个类并调用其`Next()`方法,我们可以得到一个指定范围内的随机整数。对于双色球的红球部分,我们需要在1到33之间生成6个不重复的随机数。 ```csharp Random random = new Random(); List&lt;int&gt; red...

    VB.NET生成不重复的随机数

    Random类可以生成指定范围内的伪随机数。但直接使用Random类无法保证生成的数字是唯一的,因为它的输出序列是可以重复的。为了解决这个问题,我们需要引入一些额外的策略。 一种常见方法是使用HashSet或Dictionary...

    vb,产生100个10000以内不重复的随机素数

    例如,`Int(Rnd() * (上限 - 下限 + 1)) + 下限` 可以生成指定范围内的随机整数。 接着,我们需要一个素数检测算法。素数是大于1且仅能被1和自身整除的自然数。一个常见的素数检测方法是试除法,即对每个数字n,...

    取不重复随机数.rar

    在IT行业中,生成不重复的随机数是一项常见的需求,尤其在编程和数据分析任务中。"取不重复随机数.rar"这个文件可能包含了一个易语言(EasyLanguage)的程序或者示例,用于解决这个问题。易语言是一种简洁、直观的...

    1-1000个数字中随机抽取1组数据

    首先,我们需要导入`random`模块,然后调用`randint()`函数来生成指定范围内的随机整数。例如,要生成1到1000之间的随机数,代码如下: ```python import random # 生成一个1到1000之间的随机整数 random_number =...

    Java编程实现从给定范围内随机N个不重复数生成随机数的方法小结

    在Java编程中,生成随机数是一项常见的...总的来说,Java提供多种方式生成随机数,而生成给定范围内N个不重复的随机数,可以借助数据结构如HashSet来提高效率。在设计算法时,应根据具体场景和性能要求选择合适的方法。

    python的随机数生成包,1-15的3个不重复随机数字

    总结来说,Python的`random`模块是生成随机数的核心工具,通过巧妙地结合`set`数据结构,我们可以轻松地生成指定范围内不重复的随机数。这个过程既简单又高效,适用于许多需要随机性但要求唯一性的场景。在实际编程...

    C#生成指定范围内的不重复随机数

    在C#编程中,生成指定范围内的不重复随机数是一个常见的需求,特别是在模拟、测试或者游戏开发等场景中。本文将详细讲解如何实现这一功能,以及三种不同的实现方法。 首先,我们要理解C#中的随机数生成机制。C#中的...

    matlab产生随机数的几种方法整理

    这可以通过`rng`函数的第二个参数实现,如`rng('shuffle')`使用快速但可能不完全随机的算法,`rng('twister')`则使用Mersenne Twister算法,一种高质量的随机数生成器。 8. **分布参数估计** 在实际应用中,我们...

    随机 4位 动态 生成

    - 在Python中,我们可以使用`random`模块的`randint`函数,它可以在指定范围内返回一个随机整数。为了确保生成的数有前导零,我们可以先将范围设定为1000-9999,然后转换为字符串并补零。 - 在Java中,可以使用`...

    随机抽奖,通过多位数据无序抽奖

    例如,如果抽奖号码范围是1到100,生成的随机数必须在这个范围内,避免超出。同时,为了保证公平,所有的号码应有相等的被选中概率,不能因为某些号码更容易生成而导致不公平。 在实现这个功能时,开发者可能需要...

    JS生成不重复随机数组的函数代码

    在提供的代码中,`HF.Math.RandomNumbers` 是一个自定义的函数,用于生成指定范围内的不重复随机数数组。下面将详细解析这个函数的实现及其工作原理。 首先,函数接受四个参数: 1. `startNum`: 表示随机数的起始值...

    C#随机点名图片版

    这个类提供了多种方法,如`Next()`,可以生成指定范围内的随机整数。在点名程序中,可能就是根据一个包含所有学生名字的列表,用随机数选取一个索引来决定下一个被点到的名字。 其次,"不重复"的关键在于对已点过名...

    TIA博途SCL_随机函数_全局库文件_V15.1版本.rar

    随机函数在各种应用中都有需求,例如测试、模拟、数据加密和生产过程中的随机化。在TIA博途SCL中,实现随机函数通常需要自定义代码,因为标准的PLC指令集可能不包含内置的随机数生成器。这个“随机函数全局库”很...

    sql 数据库使用游标 随机插入数据

    通过调整范围,可以生成任意范围内的随机数。 #### 2. 示例代码解析 - **生成随机数**: - `SET @ddx = 39.92 + RAND() * 0.22;` - `SET @ddy = 116.46 + RAND() * 0.55;` 这两行代码分别生成了位于[39.92, 40...

Global site tag (gtag.js) - Google Analytics