随机种子

王朝百科·作者佚名  2010-01-04  
宽屏版  字体: |||超大  

一般计算机的随机数都是伪随机数,以一个真随机数(种子)作为初始条件,然后用一定的算法不停迭代产生随机数,下面介绍两种方法:

一般种子可以以当前的系统时间,这是完全随机的

算法1:平方取中法。

1)将种子设为X0,并mod 10000得到4位数

2)将它平方得到一个8位数(不足8位时前面补0)

3)取中间的4位数可得到下一个4位随机数X1

4)重复1-3步,即可产生多个随机数

这个算法的一个主要缺点是最终它会退化成0,不能继续产生随机数。

算法2:线性同余法

1)将种子设为X0,

2)用一个算法X(n+1)=(a*X(n)+b) mod c产生X(n+1)

一般将c取得很大,可产生0到c-1之间的伪随机数

该算法的一个缺点是会出现循环。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有