3

哈希表的另一个常见实现(除了链表)是使用 BST 作为底层数据结构。
我已经搜索了网络和 SO,但找不到答案。如何使用二叉搜索树实现哈希表?的答案就像将 BST 包装到哈希表中一样,我认为这并不意味着使用 BST实现哈希表。

请告诉我代码put()get()方法。

4

1 回答 1

3

答案是你根本做不到!

BST 中的插入/查找时间是 O(log n),而在 HashTable 中应该是 O(1)

更新:
现在在我看了这本书之后......
Bin 你错过了 Gayle 所指的内容 - 最初的问题是:

设计和实现一个哈希表,它使用链接(链表) 来处理冲突

然后在答案的最后它说

哈希表的另一个常见实现(除了链表)是使用 BST 作为底层数据结构。

它与原始问题指的是同一件事:仅在发生冲突时才使用 BST,这意味着部分将被实现为 BST/List 而不是哈希图本身!

于 2013-09-21T09:50:21.487 回答