gpt4 book ai didi

Java.随机环绕

转载 作者:行者123 更新时间:2023-12-01 07:08:48 26 4
gpt4 key购买 nike

我发现多个引用资料说 Java.Random PRNG 将在 2^48 个数字出现问题后回绕。有没有人真正用代码测试过这个并确定它何时结束?

谢谢

最佳答案

好吧,Java RandomLCG带有 48 位种子。这在 documentation 中列出。 :

The class uses a 48-bit seed, which is modified using a linear congruential formula. (See Donald Knuth, The Art of Computer Programming, Volume 2, Section 3.2.1.)

无需测试。 LCG非常很好理解。事实上,Knuth 在 TAOCP 第 2 卷中确实很好地阐述了这一点(这是他所有书中最具可读性的 Material 之一)。

Java 中 LCG 的乘数已知为 25214903917,我们非常了解这个生成器。 Java 的作用是使用 LCG 输出的第 16 位到第 47 位来生成 32 位输出。这样做是因为众所周知,低位的周期比高位的周期短。

关于Java.随机环绕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18087315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com