随机数生成器
· 阅读需 2 分钟
很久以前闲得没事逛 Justine Tunney 的 GitHub 时看到这一段代码,很奇怪为什么可以生产随机数。
commit 在此:https://github.com/jart/morton/blob/fe5fdb10b507404233ff303b8ccbcffd3ed30d27/bench.c#L30
这段代码实际上就是使用线性同余方法实现了个伪随机数生成器。
线性同余方法的递推关系式为:
其中 、、 是常数, 是第 个随机数。
在这段代码中,、