我不能使用boost:hash,因为我必须坚持使用C,不能使用C++。
但是,我需要散列大量的令牌字符串(10 K到100 k) (5到40字节长),以便在这些字符串中搜索速度最快。
对于一个简单的任务来说,MD5、SHA1或任何长哈希函数似乎太重了,我不做密码学。另外还有存储和计算成本。
因此,我的问题是:
发布于 2009-04-13 14:04:18
您可以在http://www.azillionmonkeys.com/qed/hash.html找到一个好的(快速的)散列函数和有趣的读物。
唯一不应该检查碰撞的情况是,如果您使用完美的哈希--一个很好的老式查找表,比如葛培夫。
发布于 2009-04-13 14:02:43
发布于 2009-04-13 14:00:34
哈希表查找的一般哈希函数。它指定不用于加密目的,但既然您指定了没有此目的,那么您应该可以。
它包括了-- Hash函数概述--试用
https://stackoverflow.com/questions/743939
复制相似问题