动态完美哈希表和布谷鸟哈希表是两个不同的数据结构,它们支持最坏情况下的O(1)查找和预期的O(1)时间插入和删除。两者都需要O(n)辅助空间,并需要访问散列函数系列才能进行操作。
我认为这两个数据结构本身都是美丽而辉煌的,但是我不确定我如何,何时将其中一个比另一个更好。
这些数据结构中的一个结构是否具有明显的优势,是否存在特定的环境?还是它们大多数都可以互换?
我不确定在实践中是否真的使用了这两种技术。通常,这类提供最佳渐近边界的数据结构主要具有研究兴趣,因为它们通常具有隐藏在标记中的大常数。在实践中,相对于常数较大的O (1 ),您可能更喜欢使用常数较小的O (log n )技术更简单,更容易实现。
—
汤姆·范德赞丹
@TomvanderZanden确实是这样。我也对一种方法相对于另一种方法的理论优势感兴趣-每种方法相对于另一种方法是否具有良好的理论特性?
—
templatetypedef
@templatetypedef,那么我建议您将其添加到问题中。人们不必阅读评论即可了解您的问题-评论是暂时的,可以随时消失。
—
DW
是的,这些技术通常在特定领域中实际使用。
—
别名
杜鹃哈希的优点之一是易于理解和实现。而且,恕我直言,它比动态完美哈希更容易分析。
—
A.Schulz