所以我知道我可以在Java中调用random(long val)
来生成种子为2 ^ 63的随机数。如何做得更好(更大的种子价值)?我假设这必须是一个手动课来完成这样的成就,但我有点迷失如何开始。
答案 0 :(得分:0)
增加种子材料数量的两种方法是:
首先,看看George Marsaglia的一些方法,它们使用数组来保持它们的状态。 http://programmingpraxis.com/2010/10/05/george-marsaglias-random-number-generators/有一个例子(请注意注释中的更正:
#define SHR3 (jsr^=(jsr<>17), jsr^=(jsr<<5))
数组t [256]是保留大部分种子的地方。
第二,看看Pierre L'Ecuyer的作品,例如Efficient and Portable Combined Random Number Generators