随机数生成就是在给定范围内按均匀概率取出整数或小数,常用于抽签、分组、抽样和程序测试。下面说明需要掌握的要点。
随机数知识要点汇总
- 均匀分布:区间 [a,b] 内每个整数的概率都是 1/(b−a+1)
- “不重复”相当于无放回抽样,个数不能超过区间大小
- 伪随机数由种子决定,同一种子会得到同一序列
- 涉及密码、令牌、抽奖公信力时要用安全随机源
- 把随机整数缩放到区间时要避免取模偏差
示例
输入:范围 0–99,个数 4,允许重复
生成结果:示例:54、70、25、58
说明:区间共 100 个整数,每个数被抽中的概率为 1/100,期望值为 49.5。
与相关概念的区别
伪随机数(PRNG)速度快、可复现,适合模拟和游戏;安全随机数(CSPRNG)不可预测,适合密码、令牌和抽奖。真随机数来自物理噪声,一般经由操作系统熵池间接使用。
常见类型
- 均匀整数:最常用,例如 1–100
- 均匀小数:0–1 之间的浮点数
- 正态分布随机数:用于模拟测量误差
- 不重复抽样:如抽奖、分组
- 随机字节:用于密钥、令牌
计算方法
在 [a,b] 中取整数,样本空间大小是 n = b − a + 1。单次取到某个数的概率是 1/n,期望值是 (a+b)/2。不重复地取 k 个时,可能的结果数是排列数 n!/(n−k)!(考虑顺序)或组合数 C(n,k)(不考虑顺序)。例如 1–100 不重复取 5 个,组合数 C(100,5)=75,287,520。
本站的随机数生成器工具可以直接在网页中使用,无需安装,适合快速得到和核对结果。
常见问题
【随机数生成器真的随机吗?】计算机生成的一般是伪随机或安全随机数,统计上足够均匀;安全随机数还具有不可预测性。
【抽奖用哪种随机数?】建议使用安全随机源,并公开规则、记录过程,以便事后核查。
【怎样生成小数?】选择小数模式并设置位数,或生成整数后除以 10 的幂。
文中示例可以在本站对应工具中核对。
标签: 实用工具