但是在计算机中, 要想生成一个随机数, 就需要通过一个算法来实现, 那么生成随机数的算法是如何实现的呢? 简单想一下这个事情, 通过确定的输入, 确定的步骤, 输出不确定的值?...在计算机中生成随机数, 肯定要告诉它具体的操作步骤, 而步骤一旦确定, 生成的结果序列就确定了, 这也是为什么在调用随机数生成函数的时候需要设定随机种子了, 因为函数是固定的, 如果输入也固定, 那结果就不会发生变化了...简单看了几种随机函数, 主要了解一下思想, 毕竟咱也不会真正的去写一个这样的函数.
计算机中的伪随机数
平方取中
由伟大的冯诺依曼前辈想出的....其随机序列生成如下:
接收四位数输入 x
s=x^2
若 s 不足8位, 左侧补0
取 s 的中间4位作为随机数y
将y 作为输入, 回到步骤1, 生成下一个随机数
是不是感觉很简单, 这样都能生成随机数...而且, 这样生成的数字符合统计学的均匀分布吗? 别说, 我还真写了一个小脚本, 跑了一下, 生成了一亿条数据, 只把生成的四位数字判断了一下. 结果其均匀分布效果不怎么样.