关于良好散列函数的建议

时间:2015-03-13 15:14:18

标签: c++ hash

我想在c ++中创建一个用于存储字符串的哈希表。我愿意写一个好的哈希函数来尽可能避免冲突。作为示例哈希函数,我使用了以下方法:

function Hash(string)

返回(字符串中字符的ASCII值的总和)mod PrimeNumber

这个功能是否足以避免碰撞或是否还有其他好的功能?请帮助:)

N.B:不允许STL

1 个答案:

答案 0 :(得分:2)

c ++ 11已经为你不需要引入的字符串提供了一个很好的哈希函数。请参阅:http://www.cplusplus.com/reference/unordered_map/unordered_map/operator[]/