生成全数字无字母的v4 UUID的概率是多少?
全数字v4 UUID出现概率计算
首先明确v4 UUID的标准规则:
v4 UUID的核心是32个十六进制字符,按8-4-4-4-12的格式用短横线分隔,其中有2个位置是固定约束的:
- 第13个字符(第三组的首字符)固定为
4(版本标识,本身就是数字,不影响概率) - 第17个字符(第四组的首字符)只能是
8、9、a、b四个值之一
剩下的30个字符都是完全随机的十六进制字符,可选范围为0-9、a-f共16种值。
概率计算过程
- 第17位要符合全数字要求,只能选
8或9,符合概率为2/4 = 1/2 - 其余30个随机字符,每个字符为数字的概率为
10/16 = 5/8 - 总概率 = 第17位符合概率 × 30个随机位全部符合的概率
也就是:概率 = 1/2 × (5/8)^30 ≈ 3.76 × 10^-7
结果说明
换算下来,大概每生成266万个v4 UUID,才会出现1个完全没有字母的全数字UUID,和实际场景中极少见到的情况吻合。
内容的提问来源于stack exchange,提问作者MR.
相关产品推荐
相关产品推荐

