猿问

哈希算法将特定数量的数字放入固定数量的桶中

我想将 10 个基数为 10 的数字(0 到 9,999,999,999)塞进 6 个十六进制数字(00 00 00 到 FF FF FF)。我知道会有碰撞,这很好。我也不需要担心要容纳碰撞的单独链。此外,我不需要从哈希转换回原始链。只需要有一组可以表示为 00 00 00 到 FF FF FF 的桶(3 个字节中的 6 个十六进制数字)。所以是的,在 0 到 9,999,999,999 之间会有很多数字映射到这些存储桶……这很好。

有谁知道这样做的好算法,或者可能是 Java/Kotlin 中的一个包?


慕运维8079593
浏览 80回答 1
1回答

偶然的你

最简单的方法是简单地使用mod以 10 为底的数字base_var_value % 16777215那个 16M 数字只是FF FF FF十六进制。
随时随地看视频慕课网APP

相关分类

Java
我要回答