关于哈希表下界设置
来源:1-1 哈希表基础
咕叽咕
2024-03-21 18:37:47

老师你好,为什么下界设置的是大于1的数呢?按理下界不是设置为小于1的数吗?
1回答
liuyubobobo
2024-03-28
size 是哈希表中的元素个数;M 是哈希表中的地址个数(篮子个数),size / M 表示平均每一个地址里有多少个元素。
size < lowerTol * M 等价于 size / M < lowerTol,即平均每一个地址里的元素个数比 2 还小,就缩容。
比如我现在哈希表里有 20 个元素,10 个地址。删除掉一个元素以后,还剩下了 19 个元素。19 < 2 * 10(或者是 19 / 10 < 2),则缩容。
当然,你可以将 lowerTol 设置成小于 1 的数字。没有问题。对应上面的例子,则只有你删除到只有 9 个元素的时候,才会启动缩容。
继续加油!:)
相似问题