首页 > 解决方案 > 生成包含所有数字的 v4 UUID 的机会是什么?

问题描述

生成 v4 UUID 时,UUID 全为数字且不包含字母的可能性有多大?我在野外只见过少数这样的,所以想知道。

标签: uuid

解决方案


我假设它是变体 1 UUID,因为变体 2 UUID 永远不会是全数字(第 17 个十六进制数字只能是cor d)。

对于变体 1,版本 4,第 13 个十六进制数字将始终是4(这很好),第 17 个将是8, 9, a, 或b等概率(1/2 的机会是数字),其余 30 个十六进制数字是完全随机,这使每个人都有 10/16 或 5/8 的机会成为数字。

因为我们需要一切都是数字的,所以概率简单地相乘:1/2 * (5/8)^30。为了获得“N 中的 1”赔率,我们可以反转该分数:2 * (8/5)^30 ≅ 2,658,456。所以不是天文数字罕见,但比百万分之一更罕见。


推荐阅读