java 语言实现的随机数生成算法-阿里云开发者社区

开发者社区> boxti> 正文

java 语言实现的随机数生成算法

简介:
+关注继续查看
package MyMath;
import java.util.Random;
//生成随机数  调用的是系统的方法
public class random {
public static void main(String args[])
{
Random random=new Random(5);
for(int i=0;i<10;i++)
{
System.out.println(random.nextInt());
}
}
}
  引用java 类库的实现方法
  下面自己写随机,,了解一下种子数,,其实对同一个种子生成的随机数是相同的,,但是种子数是不对更新的
package MyMath;
public class random1 {
public static void main(String args[])
{
double []r=new double[2];
r[0]=5.0;
for(int i=0;i<10;i++)
{
System.out.println(rand1(r));
}
}
public static double rand1(double []r)
{
double temp1,temp2,temp3,p,base;
base=256.0;
int  a=17,b=139;
temp1=r[0]*17+139;
temp2=(int)(temp1/256);
temp3=temp1-temp2*base;
r[0]=temp3;
p=temp3/256;
return p;
//基本思想 就是   递推法  r[i]=mod(a*r[i-1],base);  随机数 p=r[i/base;
//这个随机数 确实是随机的  但是缺陷就是它并不符合 正态分布  种子的选取会影响后来的分布的
}
}


 引用一些公式就实现了符合正态分布的
public class random2 {
public static void main(String args[])
{
double []r=new double[2];
r[0]=5.0;
for(int i=0;i<10;i++)
{
System.out.println(randZT(2.0,3.5,r));
}
}
//符合正态分布的随机算法
/*
*
*
*/
public static double rand1(double []r)
{
double temp1,temp2,temp3,p,base;
base=256.0;
int  a=17,b=139;
temp1=r[0]*17+139;
temp2=(int)(temp1/256);
temp3=temp1-temp2*base;
r[0]=temp3;
p=temp3/256;
return p;
//基本思想 就是   递推法  r[i]=mod(a*r[i-1],base);  随机数 p=r[i/base;
//这个随机数 确实是随机的  但是缺陷就是它并不符合 正态分布  种子的选取会影响后来的分布的
}
public static double randZT(double u,double t,double []r)
{
int i;
double total=0.0;
double result;
for(i=0;i<12;i++)
{
total+=rand1(r);
}
result=u+t*(total-6.0);
return result;
}
}

   



最新内容请见作者的GitHub页:http://qaseven.github.io/

  

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
前端 css+js实现返回顶部功能
描述:        本文主要是讲,通过css+js实现网页中的【返回顶部】功能。   实现代码: HTML: 1 2 返回顶部 3   CSS: 1 /* return top */ 2 #btnTop { 3 display: none; 4 position:...
1133 0
飞天加速计划·高校学生在家实践丨ECS使用体验丨宝塔面板实现多端口建站与SG11解密基础学习
大家好!我是呆小猴,软件工程专业,目前是一名大四学生。首先非常感谢阿里云爸爸的这次活动,让我体验了一次什么是云服务器,在这之前只使用过虚拟主机和轻量云服务器,可以感受到了它们之间的差别。很早就关注阿里云之前的学生云翼计划了,可惜一直没有时间,现在刚好参加这次的飞天加速计划,也分享一些我的经验与心得~
237 0
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录(二)
DL之RNN:人工智能为你写代码——基于TF利用RNN算法实现生成编程语言代码(C++语言)、训练&测试过程全记录
29 0
如何实现代码自动生成?
每年大促前一个月都是奋战与忙碌的时节,不仅业务上在不断迭代创新,技术上也在推陈出新,需求推动技术变革是一个正向演进的过程,但革新是需要成本的,每一次技术与标准的革新都带来一场翻天覆地的大改造。如果我们能将需求与产物划上等号:需求即代码,那么我们只要找到两者之间的关联关系即可通过需求自动产出代码了,那岂不是乐哉美哉(diao zha tian le)。 本文主要围绕自动化生成代码的目标,讲述我们在这一过程中的所思所想,以及我们在618期间的阶段成果实践。
2812 0
+关注
boxti
12535
10037
文章
1327
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载