一个不错的算法,很简单,但有效。不过如果范围比较大,则占用内存大,就不推荐使用了。个人感觉1000个以内的就可以考虑。这东西也许你早就知道了,但我依然惊叹算法的力量。
看代码- import java.util.*;
- public class T {
- public static void main(String[] args) {
-
- int[] seed = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
- int[] ranArr = new int[9];
- Random ran = new Random();
-
- for (int i = 0; i < seed.length; i++) {
-
- int j = ran.nextInt(seed.length - i);
-
- ranArr[i] = seed[j];
-
- seed[j] = seed[seed.length - 1 - i];
- }
- System.out.println("ranArr:" + Arrays.toString(ranArr));
- }
- }
一个运行结果
ranArr:[6, 3, 5, 9, 7, 2, 8, 4, 1]
分享到:
相关推荐
这一问题的核心其实就是产生不重复随机数的问题。首先想到的递归的方法,然后才发现Python中居然已经提供了此方法的函数,可以直接使用。具体代码如下: #生成某区间内不重复的N个随机数的方法 import random; #1、...
delphi 如何产生不重复随机数 pascal里的随机数 随机数是指理论上没有规律可循、在指定范围内每个数的出现几率相等、无法根据之前的数来预测下一个数的数列。一般随机数生成器的基本原理是:首先初始化一个随机...
所生成的防伪码不能重复(按照以上例子,生成了10000个防伪码,这10000个防伪码就肯定不能重复)。 3、提交内容 1)请把整个项目源代码压缩为RAR文件进行提交 2)运行: a) exe 10 10000 b) exe 20 1000000 ...
数字实际上不是随机的 没有一台计算机能纯粹通过计算产生真正的随机数。它们能做的最好的事情就是生成伪随机数,伪随机...请记住,没有一种方法是神奇的——这些看似随机的数字是用相对简单的算法和相对简单的算术生成
k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心...
下列哪一种算法不是随机化算法( C ) A. 蒙特卡罗算法B. 拉斯维加斯算法C.动态规划算法D.舍伍德算法 24. ( D )是贪心算法与动态规划算法的共同点。 A、重叠子问题 B、构造最优解 C、贪心选择性质 D、最优子结构...
请求页式管理是一种常用的虚拟存储管理技术。 本实验的目的是通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的技术特点,掌握请求页式存储管理的页面置换算法。 2、实验内容 (1)通过随机数产生...
请求页式管理是一种常用的虚拟存储管理技术。本设计的目的是通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。要求: (1)通过随机数产生一个指令序列,共...
使用Java语言编写的彩票系统,内有四种玩法,3D,21选5,6+1,双色球,内包含很多经典算法。如何生成5个不重复的随机数等等。
常见的一种具有周期边界条件的最近邻耦合网络包含围成一个环的N个节点,其中每个节点都与它左右各K/2个邻居节点相连,这里K是一个偶数。构造算法:初始化时,N个初始节点均匀分布在圆周上,而后每个节点与自己的第k/...
求最小生成树的Prim算法和Kruskal算法 爬山问题 回溯算法 n皇后问题 动态规划Dynamic Planning 应用 求最长公共子序列LCS 矩阵连乘问题 爬楼梯问题 找零问题 0-1背包问题 分治算法...
- 使用一个不重复的,首尾相同的字符串来表示一个解,该字符串即TSP的顺序 - 使用交叉,变异两种方式产生新的解,并根据数据来计算解的适应度 - 种群定义为当前所有解的一个集合,当种群中的每个个体完成一次“进化...
存储管理的主要功能之一是合理地分配空间 请求页式管理是一种常用的虚拟存储管理技术 本设计的目的是通过请求页式存储管理中页面置换算法模拟设计 了解虚拟存储技术的特点 掌握请求页式存储管理的页面置换算法 要求...
1 通过随机数产生一个指令序列 共320条指令 指令的地址按下述原则生成: 50%的指令是顺序执行的; 25%的指令是均匀分布在前地址部分 25%的指令是均匀分布在后地址部分 具体的实施办法是: 在[0 319]的指令地址...
2、请求页式管理是一种常用的虚拟存储管理技术。。 3、命中率=1- (页面失效次数/页地址流长度)。本实验页面失效次数为每次访问相应指令时,该指令所 对应的页不在内存的次数。 【实验步骤】 一、问题描述与分析 1、...
4.3创建一个随机数生成器 4.4随机产生颜色 4.5把表中的字符串转换为数字 4.6把表中一列的所有数字加和 4.7在角度和弧度之间转换 4.8找到页面元素可容纳的一个圆的半径和圆心 4.9计算圆弧的长度 第5...
请求页式管理是一种常用的虚拟存储管 理技术。 本实验的目的是通过请求页式管理中页面置换算法模拟设计,了解虚拟存储技术的特 点,掌握请求页式存储管理的页面置换算法。 二、实验内容 1. 通过计算不同算法的命中率...
Lambda Expressions是一种新的语言功能,已在此版本中引入。它们使您可以将功能视为方法参数,或将代码视为数据。Lambda表达式允许您更紧凑地表达单方法接口(称为功能接口)的实例。 方法引用为已经具有名称的方法...
答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。 C语言是一种结构化的...
随机数法 .............................................................................................................................................. 9 六.白盒测试方法 .................................