标签:style blog http color io ar 使用 strong sp
var rand = (function(){ var today = new Date(); var seed = today.getTime(); function rnd(){ seed = ( seed * 9301 + 49297 ) % 233280; return seed / ( 233280.0 ); }; return function rand(number){ return Math.ceil(rnd(seed) * number); }; })(); console.log(rand(100));
实现原理:
入门级的选择标准
这种伪随机数生成器叫做线性同余生成器(LCG, Linear Congruential Generator),几乎所有的运行库提供的rand都是采用的LCG,形如:
生成的伪随机数序列最大周期m,范围在0到m-1之间。要达到这个最大周期,必须满足
以上三条被称为Hull-Dobell定理。
作为一个伪随机数生成器,周期不够大是不好意思混的,所以这是要求之一。
可以看到,a=9301, c = 49297, m = 233280这组参数,以上三条全部满足。
标签:style blog http color io ar 使用 strong sp
原文地址:http://www.cnblogs.com/cdwp8/p/4053033.html