首页 > 解决方案 > 哈希字符串到一个数字 % 16

问题描述

我想重用或编写一个散列算法,将一个相对较短的字符串散列为数字 0 - 15。我想用它来将测试映射到特定的 Redis 数据库(默认情况下限制为 16 个数据库)。

我将如何设计这样的散列算法或寻找合适的算法以优化低碰撞风险(因为目标空间非常小)?

标签: algorithmhashredishexmodulo

解决方案


使用具有高一致性的哈希函数并取结果模 16。

这应该为您提供尽可能低的碰撞风险(由于目标空间很小,碰撞风险仍然很高)。


推荐阅读