Data structures 100万项哈希表和100项哈希表之间的性能差异如何

Data structures 100万项哈希表和100项哈希表之间的性能差异如何,data-structures,hashtable,Data Structures,Hashtable,我知道哈希表可能存在性能问题,但如何使包含100万项的哈希表比包含100项的哈希表更快?这取决于所用哈希算法的效率 如果小地图中有很多碰撞,而大地图中没有碰撞,那么大地图会更快 阅读javadocs以了解初始容量和负载因子,并阅读哈希代码(从开始)。(是一件古老的文物,)这完全取决于碰撞的次数:如果100万项的哈希表中根本没有碰撞,那么它将比100项和100次碰撞的哈希表快得多 如果没有冲突,仅使用散列键和模(请参阅完美散列),查找将是O(1)。在发生冲突的情况下(假设哈希表是数组,并且冲突链接

我知道哈希表可能存在性能问题,但如何使包含100万项的哈希表比包含100项的哈希表更快?

这取决于所用哈希算法的效率

如果小地图中有很多碰撞,而大地图中没有碰撞,那么大地图会更快


阅读javadocs以了解初始容量和负载因子,并阅读哈希代码(从开始)。(是一件古老的文物,)

这完全取决于碰撞的次数:如果100万项的哈希表中根本没有碰撞,那么它将比100项和100次碰撞的哈希表快得多


如果没有冲突,仅使用散列键和模(请参阅完美散列),查找将是O(1)。在发生冲突的情况下(假设哈希表是数组,并且冲突链接在一个链表中),您必须按顺序遍历所有冲突,直到找到所讨论的项目,在100%冲突率下(考虑常量哈希函数,即)最坏的情况是O(n)。

您是说
哈希表
哈希映射
ConcurrentHashMap
还是哈希表?你自己做实验时发现了什么?