【java – 从列表中随机选择一个项目】教程文章相关的互联网学习教程文章

使用Java中随机生成的数据进行pi的Monte Carlo计算【代码】

我正在开发一个程序,该程序根据表示图表上x,y坐标的随机生成的浮点数来计算pi.每个x,y坐标乘以2的幂,然后存储在两个单独的数组中.坐标均匀地分布在间隔为0.1的图形上. 程序将x,y坐标相加,如果它们小于1,则这些点位于直径1的圆内,如下图所示.然后我用公式 π≈4 w / n 制定圆周率.其中,w是圆内点的计数,n是数组内x或y坐标的数量. 当我将n设置为最大10,000,000(数组的大小)时,它将生成最精确的pi(15-16位小数位)计算.但是,在将4GB RA...

java-在Android应用程序中随机生成有意义的(有效)英语单词

我正在申请字典.我同样使用Pearson Dictionary API.我需要生成一个单词,以便可以查询该单词的定义. 问题 我知道如何生成一个随机单词,但我不知道如何生成一个有意义的英语单词. 我试图通过请求JSON响应并检查响应中的result [](结果[]保留单词的定义)来解决此问题.因此,如果结果[] .lenght> 0,则该单词为有效的英语单词. 但是上面的解决方案有一个严重的问题:假设我想生成一个5个字母的单词,有多达26 ^ 5 = 11881376个不同的组合,...

java-MPAndroidChart条形图-如何在组之间以随机X轴间隔对条进行分组?【代码】

我想制作一个条形图,其中在每个数据点将3个不同的数据集组合在一起,如下所示:但是,我无法使用库提供的groupBars方法将这些条分组在一起,因为无论我为条目设置什么x值,它都会根据我在其参数中指定的间隔对这些条进行分组. 例如,如果我生成一个具有条目x值{0,5,13,17 … 50}的数据集并调用`groupBars’,则我的所有条目都被收集到1个x值,如下所示:我想要的是将每个分组的条形图,每个条形图在其指定的x值处可见.如果仅删除groupBars调...

Java随机交集在一定范围内:意外结果【代码】

请考虑这段代码:private static final Random RANDOM = new Random();public static void main(String[] args) {long distinct = IntStream.range(0, 600).map(i -> RANDOM.nextInt(600)).distinct().count();System.out.println("intersection %:" + (double) (600 - distinct) / 600 * 100);}我正在生成(0-600)600倍范围内的随机整数,天真地希望交集为0%.实际结果约为37%. 是否存在一个数学公式来计算相交概率,并具有随机整数...

java-如果未对数组进行排序,则binarySearch返回一个随机索引;否则为false.返回的索引背后的逻辑是什么?【代码】

如果我有一个看起来像这样的数组:int[] arr = {6, 12, 3, 9, 8, 25, 10};为什么返回-2:Arrays.binarySearch(arr, 8);据我了解,binarySearch仅在对数组排序时才有效.我的问题是什么决定返回的索引?解决方法:正如@assylias在评论中提到的,我可以引用binarySearch的文档Returns:index of the search key, if it is contained in the array within the specified range; otherwise, (-(insertion point) – 1). The insertion point...

java Math.random()生成从n到m的随机整数

Java中Math类的random()方法可以生成[0,1)之间的随机浮点数。而double类型数据强制转换成int类型,整数部分赋值给int类型变量,小数点之后的小数部分将会丢失。 如果要生成[0,n]的随机整数的话,只需要Math.random()乘以n+1,生成[0,n+1)的浮点数,再强制类型转换为int类型,只取其整数部分,即可得到[0,n]的整数。int b=(int)(Math.random()*10);//生成[0,9]之间的随机整数。 int temp=m+(int)(Math.random()*(n+1-m)); //生成从m...

java-如何在2D平面上随机生成一堆之间空间大致相同的站点?【代码】

我使用JavaFX来显示站点,但是您不需要了解JavaFX即可回答我的问题.我想提供一个完整的工作代码示例,以便您可以自己运行它.但是,为了帮助我,您可能只需要查看示例底部的randomChooseSites()方法. 在这段代码中,我在2D平面上生成了一堆随机点.我希望它们彼此之间的距离更相等,而彼此之间的距离不完全相等. 如何在2D平面上随机生成点,并使它们彼此之间的距离比现在更近,而又不完全相等?public class MCVE extends Application {priva...

java-装饰HashMap添加随机性以防止(D)DoS【代码】

顺便说一下,这里的解决方法是重新使用所有现有的HashMap(例如ConcurrentHashMap等),而不是完全重新发明轮子.使用随机哈希函数的语言(如Perl)可以防止这种攻击. 鉴于最近在多个hashmap实现中使用已知缺陷的DDoS(具有破坏性)(已知会影响Java Web服务器,但也影响PHP和其他),Apache Tomcat刚刚以补丁的形式发布了一个“修复程序”,允许放置限制POST请求中允许的最大参数数量(将Tomcat修补为6.0.35或7.0.23 btw). (D)DoS显然基本上是基于...

java-随机数生成问题

我的采访中问了这个问题.random(0,1)是一个随机生成整数0和1的函数.使用该函数,您将如何设计一个将两个整数a,b作为输入并生成包括a和b的随机整数的函数. 我不知道该如何解决.解决方法:我们可以通过位逻辑轻松地做到这一点(E,g,a = 4 b = 10) >计算差b-a(对于给定的例如6)>现在计算ceil(log(b-a 1)(Base 2)),即表示所有数字b / w a和b所需的位数>现在为每个位调用random(0,1). (对于给定的示例范围将是黑白000-111)>执行第3步,直到数...

java-将数均匀地随机分为m个部分【代码】

如何将一个大的正整数n随机均分为m个部分.后置条件:将所有m个部分相加应得到n. 下面是我的尝试(在Java中像伪代码一样),但是我认为它不会给我统一的随机分布.我首先通过除以n / m来求出平均部分平均数.然后,我将生成大小约为avg的m-1个随机数(通过在0& avg和* avg& 2 * avg *之间交替生成随机数.然后从中减去这m-1个数字的总和原始数字n并将其设置为第m部分. 假设函数rand(x,y)在x和y之间均匀地返回一个随机数.int[] divideUniform...

java-由于用户看不到字符串而生成随机的“密钥”

我正在寻找在Java中(在Windows上)执行以下当前任务的最佳方法: 由于用户输入了特定的String,因此可以在程序内部创建一个随机的其他String / Key(字母数字),并且用户看不见. 如果我们输入相同的字符串,则密钥必须相同. 因此,基本上,我看到了如何创建随机字符串,但是我想确保该程序的用户无法找到内部提供的密钥(实际上,我实际上使用此密钥来加密数据,因此我不会不想让简单的用户访问此密钥). 我该怎么做?您能给我看一个运行中的代...

java-如何执行随机算法

对于我正在从事的项目,我希望能够生成并执行随机算法(相信我,这是有充分理由的!)根据Alan Turings的原始论文,可以为每个TM分配一个唯一的编号(更多现代的理解方式是,每个程序都以二进制形式编译为某个唯一的大长整数. 假设我有这么长的号码.现在如何执行与此相对应的程序? 语言在这里并不是很重要,如果它包含使之更容易的机制,我很乐意选择其他语言.无论您选择哪种语言都很难,我会??精通Java. 如果您建议了另一种生成随机算法的方...

java-随机选择2D数组中的唯一元素【代码】

嗨,我正在做一个作业,但我对2D阵列的概念有些失望.我正在写一个方法主体,它随机选择2D数组中的一个元素.但是,我不确定何时解决该问题. 我当时正在考虑使用随机数生成器来选择随机元素.尽管我首先需要的是将整个盒子的长度先填充一个值.在这种情况下,2D数组框的尺寸为2020,值为零.因此,我希望2D数组完全用零填充.尽管如果我使用随机数生成器,是否有可能在首先将整个盒子尺寸填充为零之前,再次使用由生成器随机选择的元素? 抱歉,文本...

java-在恒定时间内生成唯一随机数列表【代码】

我需要1到1,000,000范围内的100个随机数.数字必须是唯一的,不能重复.它类似于this question,但是我的范围太大,无法从中创建数组. 我需要多次生成这100个随机数,因此生成需要尽可能快,最好是O(1).最快的方法是什么?解决方法:我会使用HashSet和Mersenne Twister. 码:MersenneTwisterFast ran = new MersenneTwisterFast();long time = System.nanoTime();Set set = new HashSet(100);while( set.size()<100) {set.add(ran.nextInt(...

java-如何动态解决此随机按钮实现【代码】

我有一个包含整数0、1、2、3、4的列表.然后我将其改组,作为第三步,我想使用与button1相关的第一个对象,与button2相关的第二个对象来初始化Button.如果我手动执行此操作会起作用,但是我想动态地解决它.List<Integer> objects = new ArrayList<Integer>();objects.add(0);objects.add(1);objects.add(2);objects.add(3);objects.add(4);// Shuffle the collectionCollections.shuffle(objects);//this is not working here, but it s...