你有没有想过,电脑里的随机数和我们平时抛硬币的随机,其实不是一回事?
抛硬币、掷骰子,这些是物理世界的随机。硬币落地的正反面,受出手力度、空气阻力、地面材质等无数因素影响,理论上无法预测,这叫“真随机”。
但电脑不一样,它本质上是一台按指令运行的机器,每一步都是确定的。那电脑怎么产生随机数?答案是:它靠算法模拟出“看起来随机”的数字,这种叫“伪随机数”。算法从一个初始值(种子)开始,经过复杂运算,生成一串看似混乱的数字。只要种子相同,产生的数字序列就完全相同。
那电脑能产生真随机吗?能!需要借助外部硬件,比如测量电子元件热噪声、放射性衰变等物理过程,这些不可预测的事件才能生成真正的随机数。一些高安全性系统(比如加密密钥生成)就会用这种“硬件随机数生成器”。
不过对我们日常使用来说,伪随机数完全够用。抽奖、游戏掉宝、随机点名,都是靠算法模拟出来的随机。你在线随机数生成工具里点一下,出来的数字就是伪随机数,简单又方便。

