我有很多不相关的命名事物,想要进行快速搜索。 "土豚" 在任何地方都是 "土豚",因此对字符串进行哈希处理并重复使用整数可用于加快比较速度。整个名称集合未知(而且随时间变化)。有什么快速的字符串哈希算法可以生成小的(32或16位)值并具有低碰撞率?
我想看到一个特定于C/C++的优化实现。
我有很多不相关的命名事物,想要进行快速搜索。 "土豚" 在任何地方都是 "土豚",因此对字符串进行哈希处理并重复使用整数可用于加快比较速度。整个名称集合未知(而且随时间变化)。有什么快速的字符串哈希算法可以生成小的(32或16位)值并具有低碰撞率?
我想看到一个特定于C/C++的优化实现。
CRC-32。在谷歌上有大约一万亿个链接跟它相关。