Tag: 随机

数组JAVA中的非重复随机数

我想在一个数组中生成6个数字,同时对它进行比较,因此它不会相同或没有重复数字。 例如,我想以任何顺序生成1-2-3-4-5-6,最重要的是不重复。 所以我想的是逐个比较生成的数组中的当前数组,如果数字重复,它将重新运行该方法并再次随机化一个数字,这样就可以避免重复数字。 这是我的代码: import javax.swing.*; public class NonRepeat { public static void main(String args[]) { int Array[] = new int [6]; int login = Integer.parseInt(JOptionPane.showInputDialog(“ASD”)); while(login != 0) { String output=””; for(int index = 0; index<6; index++) { Array[index] = numGen(); for(int loop = 0; loop <6 ; loop++) { if(Array[index] == Array[loop]) { […]

我在哪里可以得到可靠的熵源(真正的随机字节)?

目前,我正在寻找一种方法来提高我的Android应用程序(纸牌游戏) 的随机性质量 。 以前,据估计,对于我的情况(52!置换),需要至少226位熵(226个随机位)。 我打算使用这个byte[]作为SecureRandom的种子: SecureRandom random = new SecureRandom(); random.setSeed(/* insert seed here, byte[] */) 问题是 – 在Android上哪里可以可靠地获得此数量的随机位(至少226位),最好不需要任何权限和没有互联网。 此外,无论设备和API级别如何,它都应该工作。

util.Random中的种子是什么?

我无法理解java.util.Random中Seed的含义是什么? 我读过为什么这段代码打印“你好世界”? 问题,我仍然对种子感到困惑。 任何人都能亲切地形容我种子究竟是什么意思吗? 谢谢。 在setSeed()方法的文档中…什么意思是seed – the initial seed ? public void setSeed (长种子) 使用单个长种子设置此随机数生成器的种子。 setSeed的一般契约是它改变了这个随机数生成器对象的状态,以便与刚刚用参数种子作为种子创建的状态完全相同。 方法setSeed由类Random实现,通过primefaces方式将种子更新为 (种子^ 0x5DEECE66DL)&((1L << 48) – 1) 并清除nextGaussian()使用的haveNextNextGaussian标志。 由Random类实现setSeed恰好只使用给定种子的48位。 然而,通常,重写方法可以使用长参数的所有64位作为种子值。 参数 : 种子 – 初始种子 我希望如果我能理解seed确切含义,我相信我会清楚地理解这个答案。

构建随机排列列表的最有效方法

对于给定的Collection aCollection ,如何构建一个ArrayList<OrderedCouple>其中包含ArrayList<OrderedCouple>所有可能的耦合排列(自耦合除外)。 例如,假设aCollection是包含teamA , teamB和teamC的Set ,而OrderedCouple则是类Game ,其中构造函数接收两个团队,主机和guest作为参数。 我想在Team之间建立一个所有可能Game的ArrayList 。 也就是说, ArrayList将成为组{new Game(teamA, teamB), new Game(teamA, teamC), new Game(teamB, teamA), new Game(teamB, teamC), new Game(teamC, teamA), new Game(teamC, teamB)}以随机顺序。

如何生成具有特定概率密度函数的随机数?

我正在尝试为移动无线网络建模阴影和快速衰落。 对于快速衰落,瑞利衰落是一种合理的模型。 信道响应的包络将是瑞利分布的。 调用这个随机变量R,它将具有概率密度函数(PDF) PR(r)=((2r)/Ω)* exp(-r ^ 2 /Ω),r> = 0,Ω=2σ^ 2 http://en.wikipedia.org/wiki/Rayleigh_fading看到好的方程式。 所以,我有PDF,现在我只是想知道如何从中获取随机变量? 我看过这些问题: 生成适合Ruby中概率分布的数字数组? 用概率分布生成随机数 但我仍然不确定该怎么做。 我花了很长时间才能理解PDF,所以如果有人知道用Java获取具有特定PDF的随机变量的方法,那将非常感激!

java for循环执行太快会导致System.currentTimeMillis()重复

Java:我在使用System.currentTimeMillis()函数时遇到问题 我正在使用System.currentTimeMillis()在foor循环问题中生成唯一值,循环执行得太快,System.currentTimeMillis()给我重复值。 如何生成确定的唯一值。 for(int a=0;a<=10;a++){ System.out.println(System.currentTimeMillis()) } 我也试过了,但它也不是生成唯一数字的特征 System.currentTimeMillis()+Math.random()

随机数发生器

我需要用Java编写一个程序,使用以下公式生成[0,1]范围内的随机数: X i =(aX i-1 + b)mod m 假设a,b&m和X 0 = 0.5(即i = 0)的任何固定int值 我该怎么做呢? 我试过这样做,但显然是错的: int a = 25173, b = 13849, m = 32768; double X_[i]; for (int i = 1; i<100; i++) X_[i] = (a*(X_[i]-1) + b) % m; double X_[0] = 0.5; double double = new double(); System.out.println [new double];

需要一个快速的Java beta分发随机数生成器

我需要在某些速度关键代码中生成具有beta分布的随机数。 目前我正在使用numerics4j库中的BetaRandomVariable()类 – 但目前占我代码CPU使用率的95%左右! 任何人都可以推荐更快的方法来生成这些随机数吗?

随机发生器每次给我相同的数字

import java.util.Random; public class Fighter { int str; int dex; int hth; Random gen = new Random(1535636); public Fighter() { str = gen.nextInt(9); dex = gen.nextInt(9); hth = gen.nextInt(14); } public int getHth(){ return hth; } public int getStr(){ return str; } public int getDex(){ return dex; } } import java.util.Random; public class Arena { […]

每次运行应用程序时,如何生成唯一的随机数?

在我的应用程序中,我想生成9位数的随机数,这样它们就是唯一的。 每次运行应用程序时,只应生成一个9位随机数,它应该是唯一的。 后来我想将这个号码及其相关数据保存在.txt文件中,这样我就可以在需要时检索与这个唯一号码相关的数据。 我该怎么做到这一点?