【问题标题】:Hash table vs Hash list vs Hash tree?哈希表 vs 哈希列表 vs 哈希树?
【发布时间】:2023-03-31 18:22:02
【问题描述】:

哈希表、哈希表和哈希树有什么不同?什么时候用哪一个?什么时候表优于树。

【问题讨论】:

  • 集合、列表和树有什么区别?现在添加哈希。
  • 我对维基百科了解不多,所以我在这里寻找更好的答案。

标签: hashtable data-structures


【解决方案1】:
  • 哈希表:它是一种数据结构,您可以在其中插入成对的(键,值),其中键用于计算哈希码,该哈希码用于决定将与其键关联的值存储在何处。这种结构很有用,因为计算哈希码是 O(1),因此您可以在恒定时间内找到或放置一个项目。 (请注意,有一些警告和不同的实现会稍微改变这种性能)
  • Hashlist:它只是根据各种数据块计算的哈希码列表。例如:您将一个文件分成许多部分,并为每个部分计算一个哈希码,然后将它们全部存储在一个列表中。然后,您可以使用该列表来验证数据的完整性。
  • Hashtree:它类似于 hashlist,但你有一个树,而不是一个哈希列表,所以树中的每个节点都是一个哈希码,它是根据其计算的孩子们。当然,叶子将是您开始计算哈希码的数据。

Hashtable 通常很有用(它们也称为 hashmaps),而 hashlistshashtrees 更具体一些并且对于确切的目的很有用..

【讨论】:

  • 我正在尝试为我的数据挖掘项目实施 Apriori 算法,而 HashTree 是一个很好的数据结构,用于计算生成的候选者的支持数。有人可以指定如何实现哈希树(因为我无法在网络上找到关于哈希树的好信息)。任何帮助将不胜感激,谢谢!
  • 这里假定“哈希树”是“默克尔树”的同义词。还有一个general purpose data structure by that name
猜你喜欢
  • 2010-09-27
  • 1970-01-01
  • 2016-10-03
  • 2012-09-16
  • 2023-03-27
  • 2011-03-09
  • 1970-01-01
  • 2013-03-21
  • 2021-02-13
相关资源
最近更新 更多