我已搜索过每一个地方,但我无法理解为什么是O(1 + a / 2) 其中a是负载系数。有人可以一步一步地解释这一点。
答案 0 :(得分:2)
让哈希表中的元素数量为n
。
这意味着哈希表中有n/a
个单元格(/行),每个单元格都包含一个元素列表。这是载荷因子的定义。
因此,每个此类单元格所预期的元素数量为n/(n/a) = a
。
未排序列表中的线性搜索需要遍历一半的元素,直到它平均找到正确的元素(并且我们假设它是成功的搜索),因此它需要遍历a/2
个元素。 / p>
1
因子来自访问哈希表本身的正确列表。