好吧,Java Random是带有48位种子的LCG.这在文档中列出:
该类使用48位种子,使用线性同余公式进行修改.(参见Donald Knuth,计算机程序设计的艺术,第2卷,第3.2.1节.)
没有必要对它进行测试.LCG 非常了解.Knuth实际上确实在TAOCP第2卷中做得很好(这是他所有书中最具可读性的材料).
已知Java中LCG的乘数为25214903917,我们非常了解该生成器.Java所做的是将LCG的输出的第16位到第47位产生32位输出.这样做是因为已知低阶位具有比高阶位短的周期.
| 归档时间: |
|
| 查看次数: |
168 次 |
| 最近记录: |