数组访问中的二进制搜索比使用哈希表更快吗?

时间:2012-09-27 22:43:58

标签: c++ optimization

this website的4.4节中,建议二进制搜索数组而不是使用哈希表。那怎么样?

2 个答案:

答案 0 :(得分:8)

制作一揽子声明的因素太多了。

  • 容器中元素的数量。
  • 哈希函数的速度。
  • 比较功能的速度。
  • 哈希冲突的数量。

答案 1 :(得分:3)

哈希表(具有良好的哈希函数)具有O(1)复杂度(优于O(log n);),因为它们直接“链接到”结果。

但是为小型数据/数组使用哈希表可能不值得分配表所需的内存。