我有这样的需求:
我有100道试题,id是0到99,我想从中找出20道试题组成一个试卷,要求试题不重复,打乱顺序:
/** * 产生无重复的随机数 sumInt:总样本 (0....sumInt-1) * resultSum: 产生的随机数个数 * * @return */ public static int[] randoms(int sumInt, int resultSum) { Random r = new Random(); int temp1, temp2; //Total sample int send[] = new int[sumInt];//0....(sumInt-1) for (int i = 0; i < sumInt; i++) { send[i] = i; } int len = send.length;//The length of the total sample int returnValue[] = new int[resultSum];//Random number to return for (int i = 0; i < resultSum; i++) { temp1 = Math.abs(r.nextInt()) % len; temp2 = send[temp1]; returnValue[i] = temp2; if (temp1 != len - 1) { send[temp1] = send[len - 1]; send[len - 1] = temp2; } len--; } return returnValue; }
测试:
public static void printArray(int[] ints) {
for (int i = 0; i < ints.length; i++) {
System.out.print(ints[i]);
if (i < ints.length - 1) {
System.out.print(" ,");
}
}
System.out.println();
}
@Test
public void test_randoms(){
printArray(SystemUtil.randoms(5, 3));
}
相关推荐
获取种子之后,文章中给出了一个名为rnd2的函数来生成指定范围内的随机数。这个函数检查环境变量$RANDOM是否存在,如果不存在则从/dev/urandom获取一个种子,否则使用$RANDOM作为种子。然后,利用awk工具生成一个...
易语言提供了生成随机数的函数,允许开发者根据需求获取指定位数的随机数值。这通常涉及到数学和算法的知识,以及对易语言内置函数的理解。 生成随机数的函数在易语言中通常是通过“随机数”模块实现的,这个模块...
例如,你可以生成一个大于等于0且小于2^n的随机数,然后通过位移操作来获取n位的随机数。 4. 随机数种子: `随机数`函数的随机性依赖于种子。默认情况下,易语言使用系统时间作为种子,但为了得到可重复的随机序列...
本资源"易语言源码取指定位数的随机数.rar"是一个与易语言相关的代码示例,用于演示如何在易语言中生成指定位数的随机数。 随机数在计算机编程中广泛应用,如模拟随机事件、加密算法、游戏开发等。在易语言中生成...
主要介绍了VC的一些基本操作,告诉我们怎么利用VC进行随机数的产生
"Java实现获取指定个数的不同随机数" Java是一种广泛使用的编程语言,它提供了多种方式来生成随机数。本文将介绍如何使用Java实现获取指定个数的不同随机数。 Java中有多种方法可以生成随机数,包括使用Random类、...
如果需要生成指定范围内的随机数,可以结合使用模运算符`%`。例如,`rand()%n`会返回一个0到n-1的随机整数。如果你想生成1到n之间的整数,可以使用`1+rand()%n`,这样可以确保结果不小于1且不大于n。 然而,`rand()...
例如,在Python中,可以使用`random`模块的`randint()`函数来生成指定范围内的整数。为了确保每次生成的数字不重复,我们可以使用一个列表来存储已经选择过的数字,并检查新生成的数字是否已存在于列表中。 2. **...
虽然这个方法产生的随机数范围比较小,但是通过一些灵活的处理,可以获取任意范围的随机数。 例如,我们可以先通过 Math.random() 方法生成一个随机数,然后将结果乘以 10,并使用 Int 方法进行转换,以获取一个 0 ...
1.随机数 随机数,是使用一个确定性的算法计算出来随机数序。在程序开发中经常需要产生...3.生成指定位数随机数 以生成六位随机数为例 package main import ( fmt math/rand ) func CreateCaptcha() string {
例如,在Python中,我们可以使用`random`模块的`randint`函数来生成一个指定范围内的整数。 ```python import random target_number = random.randint(1, 100) # 生成1到100之间的随机整数 ``` 2. **用户输入**:...
在Java编程语言中,生成指定范围内的不重复随机数是一个常见的需求,这通常涉及到数组、集合、以及随机数生成器的使用。以下是一些相关的知识点: 1. **Random类**: Java中的`java.util.Random`类是用于生成...
在实际应用中,我们可能需要根据业务需求调整随机数的生成策略,比如改变随机数的范围、使用特定的种子、或者采用更复杂的算法来生成更加随机的字符串。 至于压缩包子文件“WindowsFormsApplication1”,这通常是一...
该类位于`System`命名空间下,可以通过创建该类的实例来获取随机数。 ##### 1.1 `Next()` 方法 `Next()` 是`System.Random`类中最常用的方法之一,它用于生成一个介于0(包括)到2147483647(不包括)之间的32位有...
如果你想生成指定范围内的整数,可以使用以下公式: ```java (int)(最小值 + Math.random() * (最大值 - 最小值 + 1)) ``` 例如,如果你想要生成 1 到 10 之间的整数,代码如下: ```java (int)(1 + Math.random() *...
好的随机数生成器应该具备以下特点:均匀分布(生成的数字在指定范围内均匀分布)、不可预测性(对于给定的种子,后续的随机数序列无法被准确预测)以及快速生成(不影响程序的整体性能)。在实际应用中,开发者通常...
这样的设计允许用户通过`set_random_seed()`设定自定义种子,然后使用`generate_random()`生成指定范围内的随机数。这增加了代码的灵活性和可复用性。 在实际应用中,我们可能还需要考虑到随机数生成的性能、随机性...
其次,我们要明白如何根据需要生成一个指定范围内的随机数。在上述内容中,getRandom函数就实现了这样一个功能,它能够返回一个指定范围内的随机整数。这个函数首先通过Number()函数确保传入的参数n和m为数字类型,...
本文详细介绍了在JavaScript中如何生成指定范围的随机数,并提供了几个实例代码。在编程中,随机数生成是一个常见需求,它可以用于游戏开发、数据模拟、测试用例生成等多种场景。 首先,我们来看如何生成固定位数的...
通过调用`Random`对象的`Next()`方法,我们可以生成一个指定范围内的随机整数。例如,要生成一个介于0到9999之间的随机数,可以使用`randomGenerator.Next(10000)`。 示例代码: ```csharp int randomNum = random...