gpt4 book ai didi

random - 是否有效的随机生成算法?

转载 作者:行者123 更新时间:2023-12-01 11:07:19 24 4
gpt4 key购买 nike

long timeValue = timeInMillis();
int rand = timeValue%100 + 1;

如果我们循环执行上面的代码N次,它会生成N个1到100之间的随机数。我知道随机数的生成是一个棘手的问题。只是想知道这是一个很好的随机数生成算法吗?还是伪随机数生成器?

为什么我认为这会产生对随机行为的良好估计?1) 1到100的所有no均匀分配。没有偏见。2) timeInMillis 会表现出一些随机行为,因为我们永远无法真正猜测 CPU 将在什么时间执行此函数。 CPU 中运行着许多不同的任务。因此 timeInMillis() 指令执行的确切时间在下一次循环迭代中是不可预测的。

最佳答案

没有。首先,在大多数处理器上,这将在 1 毫秒内循环多次(可能是完整的 100 次),这将产生 100 个相同的数字。

即使为随机数生成器播种计时器滴答声也可能很危险 - 计时器滴答声很少像您预期的那样“随机”。

关于random - 是否有效的随机生成算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074575/

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