生日悖论(碰撞概率)计算器

精确的生日悖论碰撞概率、目标→n 和蒙特卡罗模拟(固定种子)——在浏览器中本地运行。

计算概率 至少发生一次碰撞 画画时 n 样本来自 d 等可能值(天或 2^b 哈希空间)。

在浏览器本地运行(无服务器上传)。可共享的 URL 会重现相同的状态。

其他语言 ja | en | zh-CN | es | pt-BR | id | fr | hi-IN | ar

使用方法(3步)

  1. 选择 天数 (d=365/366) 或 (d=2^b)。
  2. 输入 n (或切换到“目标→n”)。
  3. 复制可共享的 URL 或运行模拟。

输入

模式
计算什么
示例:
预设:

结果

P(碰撞)
P(无碰撞)
近似(泊松)
近似误差(绝对/相对)
/
目标→所需n
所需 n(精确)
所需n(大约)

P(碰撞)与 n(蓝色)。橙色线标记您当前的n。

提示:将鼠标悬停(或点击)图表可查看特定 n 处的概率。下面的快速表格提供了可访问的值。

快速表

nP(碰撞)p (0..1)
模拟(蒙特卡罗)

估计 P(碰撞)
95% CI(威尔逊)
|p̂ - p_exact|

注释和公式

示例

经典:d=365,n=23

P(碰撞)约为 0.5073(≈ 50.7%)。

哈希冲突:32 位

使用 b=32 (d=2^32) 的位模式。目标 0.5 给出 n≈77,164。

常见问题解答

什么是生日悖论?

它是从 d 个等可能值中抽取 n 个样本时的碰撞概率。当 d=365 时,n=23 已经给出了大约 50%。

为什么只有23人就超过50%?

可能的对的数量随着 C(n,2) 的增加而增加,因此碰撞可能很快就会发生。

具体公式是什么?

P(无碰撞) = (d)_n / d^n,且 P(碰撞) = 1 − P(无碰撞)。

如何计算目标概率所需的 n?

我们搜索最小的整数 n 使得 P(collision) ≥ target。

这与哈希冲突(32 位/64 位)有何关系?

使用位模式 (d=2^b)。对于 32 位,50% 点约为 n≈77,164。

模拟中的种子是什么?

种子使模拟具有确定性和可重复性。

真正的生日是统一的吗?

并不完美。该工具使用标准统一模型。

相关计算器