【发布时间】:2015-01-07 09:38:56
【问题描述】:
在编码可扩展散列时,可以选择使用散列值的最高有效位或最低有效位,以确定要散列到哪个桶。使用最低有效位有许多优点:
- 当你将目录翻倍时,你可以复制所有的指针, 而不必创建一个将它们交错的新目录。
- 您可以通过根本不讨论位来简化对算法的讨论,而只需像使用散列一样使用模运算。使用 3 个最低有效位选择存储桶与 h(x) = x mod 2^3 相同。
- 您不需要预先指定二进制数的宽度;如果您使用的是最高有效位,则需要考虑特定的位长度。
我无法理解的是为什么reference 在reference 之后reference 之后显示使用最高有效位完成的可扩展散列。据我所知,最高有效位产生的唯一优势是纸上(或屏幕上)没有交叉线的图表。有什么好的理由为什么这么多的来源如此重要而不是最重要的位?
【问题讨论】:
-
可能是您提到的原因:图表更整洁,因为所有这些参考都是出于解释目的。例如,您在第一个参考资料中提供的实际实现使用 LSB。