1 指数分布

指数分布的概率密度函数:y=lamda*exp(-lamda*x)

x>=0

由此可以计算概率分布函数:y=1-exp(-lamda*x)

x>=0

y是  X

首先,把y当作是在(0,1)区间的均匀分布的随机变量。

然后,求y=1-exp(-lamda*x)的逆函数,x=-(1/lamda)*ln(1-y)

令z=1-y,显然z也是(0,1)区间的均匀分布的随机变量,于是就有x=-(1/lamda)*ln(z)。

z可以通过(double)

rand()  /  RAND_MAX计算。原因是rand()  是随机分布函数。

最终满足指数分布的变量x,就可以通过x=-(1/lamda)*ln(z)计算。

import

java.util.*;

public class zhishu

{

public

static void main(String[] args) {

double x,

z;

double

lamda;

System.out.println("请输入lamda的值:");

Scanner

scanner = new Scanner(System.in);

lamda =

scanner.nextDouble();

for(int i=0;

i<10; i++) {

z =

Math.random();

x = -(1 /

lamda) * Math.log(z);

System.out.println(x);

}

}

}

----------------------------------------------------------------------

2

正态分布

java.util.Random里的nextGaussian(),生成的数值符合均值为0方差为1的高斯/正态分布,即符合标准正态分布。

产生数字的范围:任何数都有可能,不过在0左右的数字较多。

产生N(a,b)的数:Math.sqrt(b)*random.nextGaussian()+a; 即均值为a,方差为b的随机数

--------------------------------------------------------------------------------------

3 扩展:使用[0,1]之间的均匀分布生成任意一个分布函数的随机数序列

任务:给定一个分布的密度函数f(x),要生成满足这一分布的一组随机数。

输入:一组[0,1]之间的满足均匀分布的随机数U

输出:一组满足f(x)的随机数V

方法:1)求f(x)的分布函数F(x)

2)求F(x)的反函数F'(x)

3)对于U中的每一个元素u,将F'(u)加入序列V中。

4 其他:colt库中有随机数发生器

cern.jet.random.Distributions

Method Summary

static double

k,

double p) Returns

the probability distribution function of the discrete geometric

distribution.

static double

r,

int nr, RandomEngine randomGenerator) Returns

a random number from the Burr II, VII, VIII, X Distributions.

static double

r,

double k,

int nr, RandomEngine randomGenerator) Returns

a random number from the Burr III, IV, V, VI, IX, XII

distributions.

static double

Returns

a cauchy distributed random number from the standard Cauchy

distribution C(0,1).

static double

variance,

double mean, RandomEngine randomGenerator) Returns

an erlang distributed random number with the given variance and

mean.

static int

p, RandomEngine randomGenerator) Returns

a discrete geometric distributed random

number;

static double

l3,

double l4, RandomEngine randomGenerator) Returns

a lambda distributed random number with parameters l3 and l4.

static double

Returns

a Laplace (Double Exponential) distributed random number from the

standard Laplace distribution L(0,1).

static double

Returns

a random number from the standard Logistic distribution

Log(0,1).

static double

alpha,

double cut, RandomEngine randomGenerator) Returns

a power-law distributed random number with the given exponent and

lower cutoff.

static double

Returns

a random number from the standard Triangular distribution in

(-1,1).

static double

alpha,

double beta, RandomEngine randomGenerator) Returns

a weibull distributed random number.

static int

z, RandomEngine randomGenerator) Returns

a zipfian distributed random number with the given skew.

java2组随机数的共通数_java随机数产生-指数分布 正态分布 等相关推荐

  1. 携手聚力 共赢数智未来丨物通博联招募生态合作伙伴

    01风口行业,万亿市场 近几年,我国工业物联网和工业互联网市场规模及产业增加值持续增长,根据工信部数据,我国工业物联网和工业互联网产业规模已迈过万亿元大关. "十四五"规划和203 ...

  2. java随机猜数_java产生随机数且猜数字游戏(源码)

    java产生随机数且猜数字游戏(源码) java产生随机数且猜数字游戏(源码) package 第二次作业; import java.util.Random;                      ...

  3. c语言和java相通之处_java和c共通吗

    java和c不共通,C与JAVA确实有一些相似之处,但这是所有现代编程语言的共同点,因为内JAVA后于C推出,肯定在容某些方面继承前者的优点,但是二者不是相通的,JAVA是纯面向对象编程语言,JAVA ...

  4. 计算机组成原理实验心得2000字,计组实验报告(共10篇).doc

    计组实验报告(共10篇) 计组实验报告(共10篇) 计组实验报告 计算机组成原理实验报告一 一.算术逻辑运算器 1. 实验目的与要求: 目的:① 掌握算术逻辑运算器单元ALU(74LS181)的工作原 ...

  5. 一个共通的viewModel搞定所有的编辑页面

    前言 我写代码喜欢提取一些共通的东西出来,之前的一篇博客中说了如何用一个共通的viewModel和简洁的后台代码做查询页面,所有的查询页面都要对应一个数据录入的编辑及查看明细的页面,那么今天我们就来实 ...

  6. listview上拉加载上一页 下拉加载下一页共通处理

    先什么都不说了,上效果图: 第一页默认显示: 上拉加载下一页: 拉至一定高度: 松开 加载中: 下拉加载上一页: 下拉至一定高度: 松开 加载中: 代码已经上传:http://download.csd ...

  7. jdbc结合sqlserver的javaWeb工程的分页查询共通操作代码

    搜索这个标题找到一篇文章: 适用所有使用jdbc结合sqlserver的javaWeb工程的分页查询共通操作代码 http://alexlsg.iteye.com/blog/700015 看了之后,试 ...

  8. Semantic-UI的React实现(四):基本元素组件的共通处理(父类)实现

    上一篇(Semantic-UI的React实现(三):基本元素组件)已经提到过,基本元素组件的实现因为没有复杂的交互,仅仅是CSS类的编辑和组装,因此实现原理相对比较简单. 但简单的东西要想做的简洁, ...

  9. solidworks画白色金属光泽_美人的共通点就是卧蚕,卧蚕真的太重要了,没有也要画出来...

    在美学上,卧蚕加上双眼皮最能呈现「电眼」风采. 美人们的共通点就是「卧蚕」,它主宰着眼神的命运,不仅能提升下眼睑魅力,让眼神看起来灵动温和,也能让眼睛放大,还提升你的好人缘呢. 有木有发现,有了卧蚕就 ...

最新文章

  1. JVM:查看java内存情况命令
  2. loadrunner 只能并发50_loadrunner 场景设计-(一)
  3. 接口测试用例模板_ITest:京东数科接口自动化测试实践
  4. js实现椭圆轨迹_华为开发者大会2020隆重召开,亿健T10椭圆机荣耀参展
  5. 调制的缺点_DML、EAM与MZI调制的比较
  6. Debug程序的使用
  7. 连续子数组的最大和(基于动态规划)
  8. cannot be cast to org.springframework.web.method.HandlerMethod 统一异常处理发生异常。
  9. 移动站点生成便捷之路:百度SiteApp
  10. ORACLE DATAGUARD 数据库---创建逻辑备用数据库
  11. 九度OJ 1060:完数VS盈数 (数字特性)
  12. puppet经典应用
  13. 拆分php中 $i++ ++$i PHP中的i++与++i的区别及效率
  14. 啊哈c语言逻辑的挑战课后题答案,啊哈C语言 逻辑的挑战(修订版)pdf
  15. wpdec函数_小波包分解常用函数
  16. tinyalsa 终极详解
  17. [Typecho]更换头像源及显示QQ显示头像
  18. 图片3d立方体旋转html代码,超酷3D立方体空间旋转图片画廊特效
  19. petalinux2018.3安装步骤
  20. 计算机一级wps选择题必背知识点,计算机一级WPS提高练习题及答案

热门文章

  1. 线程同步-事件内核对象
  2. 2017年网易校招题 解救小易
  3. php $handle,laravel $kernel-handle 报错的解决办法_PHP开发框架教程
  4. 270 扩展固态硬盘_游戏人的扩展坞应该是怎样?
  5. dp主机_HDMI和DP谁才是未来主流?
  6. 输入一个十进制数,转化为二进制
  7. nginx做负载均衡,解决多机器多gpu卡服务对外暴露一个接口问题
  8. python实现Trie 树+朴素匹配字符串+RK算法匹配字符串+kmp算法匹配字符串
  9. Spring Data JPA 从入门到精通~@Procedure 储存过程的查询方法
  10. Replace Error Code with Exception(以异常取代错误码)