哈希表与词典

时间:2017-10-07 16:00:33

标签: data-structures

据我所知,哈希表使用键存储任何项目而词典使用简单的键值对来存储项目。这意味着字典比哈希表快得多(我认为。如果我是,请纠正我错误)。 这是否意味着我永远不应该使用哈希表?

1 个答案:

答案 0 :(得分:1)

答案是“它取决于”。

字典只是将键映射到值的一种方法。您可以使用库或自己实现库。

哈希表是一种实现字典的特定方法,其中密钥基于哈希函数。此函数通常基于模运算。这意味着两个不同的值可能以散列键结束,因此键之间会发生冲突。然后由您(或实现哈希表的任何人)决定如何解决冲突。您可以在同一个键上链接值,重新哈希并使用子哈希表,或者您甚至可能希望重新开始使用新的哈希函数(这会很昂贵)。

取决于字典(哈希表)的底层实现将影响您的查找性能。