存储具有字符串类型键的哈希值的最佳结构



我是哈希领域的初学者。我正在编写一个为字符串键编制索引的程序。为此,我对varachar(512)键的前3个字符进行散列,然后获得数字形式的散列值。我打算使用该数字值对数据进行索引。我允许发生冲突,也就是说,如果两个字符串的前三个字符相同,那么它们可能具有相同的哈希值。

现在,如果某个查询来查找特定的字符串键,我将首先对其进行散列,然后在查找表中查找其散列值。

我需要为此存储一个查找表吗?或者我可以动态计算它的哈希值,然后执行搜索吗?

如果是的话,如果我们将性能和优化作为主要标准,那么哪种结构是好的,我使用C++。

谢谢!

STL已经有了unordered_map,您可以将它与用户定义的类型和自定义哈希函数一起使用。

最新更新