为什么这个类在其线性同余公式中使用 48 位种子? 我本来期望 32 或 64...
我知道当要求 32 位值时它需要更高阶位。但为什么只有 16 个附加位?这是一个“随机”选择吗?
最佳答案
您需要比输出位更多的状态位,因为 LCG 的性质是状态的低位位根本不是很随机。所以如果你想要 32 位输出,你需要超过 32 位的状态。
为什么使用 48 而不是 64?因为 48 就足够了,而且您是几十年前设计的,所以有充分的理由希望避免使用比绝对必要更多的资源。
关于math - 为什么在 util Random 类中使用 48 位种子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2213882/