什么是随机数生成器

什么是随机数生成器

0352

在计算领域,随机数生成器是一种产生不包含任意模式的序列的算法或过程。之所以称为随机数,是因为它们没有任何模式可循。产生的数字基本无法预测。

生成随机数的程序与日俱增,也促进了随机数生成方法的发展。这项技术历史悠久,最早的掷骰子、抛硬币和抽扑克,都可以看成是随机数生成器。但是,这些方法都只能产生有限的随机数。

随机数生成器的计算方法应用得十分普遍,例如统计抽样、赌博、随机生成的设计、科学与工程领域的计算机仿真,以及需要不可预测结果的大量其他领域,如密码系统。

随机数生成器主要有两类,真随机数生成器和伪随机数生成器。真随机数生成器通过真实的物理过程生成随机数,例如硬盘的实际读写时间。伪随机数生成器通过计算机算法生成随机数。还有一种随机数生成器通过统计分布生成随机数,例如泊松分布、指数分布、正态分布、高斯分布等。一些伪随机数生成器如下所示:

  • BBS随机数生成器(Blum Blum Shub)
  • Wichmann-Hill随机数生成器(Wichmann-Hill)
  • 进位—互补—乘法随机数生成器(complementary-multiply-with-carry)
  • 反向同余随机数生成器(inversive congruential generator)
  • ISAAC随机数生成器(ISAAC (cipher))
  • 滞后斐波那契随机数生成器(lagged Fibonacci generator)
  • 线性同余随机数生成器(linear congruential generator)
  • 线性反馈移位寄存器(linear-feedback shift register)
  • 最大周期(索菲·热尔曼质数)倒数随机数生成器(maximal periodic reciprocals)
  • 梅森旋转随机数生成器(Mersenne twister)
  • 进位相乘随机数生成器(multiply-with-carry)
  • Naor-Reingold伪随机数生成器(Naor-Reingold pseudo-random function)
  •  Park-Miller随机数生成器(Park-Miller random number generator)
  • WELL伪随机数生成器(Well-equidistributed long-period linear)

艾奇编程网,专注分享优质文章,以及优质学习资源,大家可前往下载专区获取相应资源。

图片[1]|什么是随机数生成器
艾奇编程网
© 版权声明
THE END
喜欢就支持一下吧
点赞2赞赏
分享
评论 抢沙发
HarryPotter的头像|艾奇编程网

昵称

取消
昵称表情