我有这样的需求:

我有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 sampleint 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 sampleint returnValue[] = new int[resultSum];//Random number to returnfor (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));

}

转载于:https://blog.51cto.com/huangkunlun520/1241416

获取指定个数指定范围的随机数相关推荐

  1. pandas使用query函数和sample函数、使用query函数筛选dataframe中的特定数据行并使用sample函数获取指定个数的随机抽样数据

    pandas使用query函数和sample函数.使用query函数筛选dataframe中的特定数据行并使用sample函数获取指定个数的随机抽样数据(query dataframe and ran ...

  2. c语言学习进阶-C语言程序实现生成指定区间指定个数随机数

    ##C语言程序实现生成指定区间指定个数随机数 设计一个自动数据生成程序,能自动生成指定行数的随机整数并写入到一个文件当中,随机整数的范围可以被控制,例如控制在0 到100 间,这个程序的操作命令行参数 ...

  3. PLC编程实现在指定范围内生成一个随机数

    引言 今天为了方便调试上位机程序,主要是VB中曲线更新绘制,本来以为会有现成的函数,毕竟有些工具里自带,比如Matlab. 网上搜了一下,PLC是没有的随机函数的,需要自己编写.于是决定用PLC编程实 ...

  4. python提取矩阵元素_python获取array中指定元素的示例

    python获取array中指定元素的示例 对于array,如2-D的array,如何取指定元素 设array为3*10的shape s = array([[ 0, 1, 2, 3, 4, 5, 6, ...

  5. php 随机制定数,(php)生成指定个数的随机红包

    $total=20;//红包总金额 $num=10;// 分成10个红包,支持10人随机领取 $min=0.01;//每个人最少能收到0.01元 $redpack = new redpack($tot ...

  6. Python 获取list 中指定元素出现的次数

    Python 获取list 中指定元素出现的次数 使用list 的count 方法 list_a = [1, 2, 3, 1, 4, 5, 1] print("1 出现的次数: %d&quo ...

  7. sum_series() 求一列数的指定个数的数和(5个数字的和)

    1 #include <stdio.h> 2 #include <stdarg.h> 3 /*用sum_series() 求一列数的指定个数的数和(5个数字的和)*/ 4 do ...

  8. java list 截取部分数据_Java List.subList()方法:获取列表中指定范围的子列表

    集合类中的 List.subList() 方法用于获取列表中指定范围的子列表,该列表支持原列表所支持的所有可选操作.返回列表中指定范围的子列表. 语法: subList(int fromIndex,i ...

  9. 02_pandas获取数据(指定列获取、[]方式获取、loc函数,at函数, iloc函数 iat函数)

    获取数据 通过指定列的方式获取数据 选择单独一列,通过这种方式获取一个Series,等价于df.A import numpy as np import pandas as pd# 通过设置开始时间,并 ...

最新文章

  1. 美国科学院报告《无止境的前沿:科学的未来75年》
  2. jvisualvm远程监控Tomcat
  3. CCF认证历年试题解【网上跟帖,请不要使用称呼】
  4. 二十七、综合案例数据预处理
  5. C# Job System
  6. Android之如何解决刚下载的Android studio(包括上面的菜单栏)乱码问题
  7. docker ssh
  8. binaryviewer java_用java实现java的2进制文件字节序转换到C/C++的2进制文件字节序
  9. L1-077 大笨钟的心情 (15 分)-PAT 团体程序设计天梯赛 GPLT
  10. GO语言学习之路13
  11. HTML开发者工具抓取所有图片,利用开发者工具,截取网页高清长图
  12. JUnit单元测试常用方法知识整理
  13. mfc 调用绿色版的Foxit Reader / 迷你pdf阅读器.exe的同时打开一个pdf文件
  14. 萨达阿萨德发送到在线橙V
  15. 服务器端高性能的IO模型 转自酷勤网
  16. 【面试问题】进程和线程的区别——通俗易懂
  17. flask读书笔记-flask web开发
  18. 关于GPL协议的理解(开源与商用、免费与收费的理解)
  19. 蓝牙 BLE 协议学习: 有关概念介绍
  20. 年审是当月还是当天_车辆年审有效期是按月算还是按日

热门文章

  1. idea改成c盘_解决IDEA占用C盘空间过大的问题
  2. mysql k,mysql事务有关概念-怀念K.Dures
  3. java 数据排序需求分析_java 实现数组全排序
  4. TypeError: Expected bytes错误解决方法
  5. spring中事务和传播属性配置代码
  6. JS高级进阶之ECMAScript 常见面试题
  7. 测试计划(GB8567——88)
  8. JS破解专题|光汇云油登录算法
  9. 逻辑漏洞之密码找回总结
  10. 最大似然估计与损失函数