【发布时间】:2020-05-21 08:30:31
【问题描述】:
我正在研究哈希表和哈希映射,我所阅读或观看的所有内容都对差异进行了非常模糊的描述。从他们两个在 Netbeans 上乱来,他们似乎有相同的功能和做同样的事情,这两种数据结构之间的根本区别是什么?
【问题讨论】:
标签: data-structures hashmap language-agnostic hashtable
我正在研究哈希表和哈希映射,我所阅读或观看的所有内容都对差异进行了非常模糊的描述。从他们两个在 Netbeans 上乱来,他们似乎有相同的功能和做同样的事情,这两种数据结构之间的根本区别是什么?
【问题讨论】:
标签: data-structures hashmap language-agnostic hashtable
HashTable 对我来说听起来像是一个具体的数据结构,尽管它有许多变体,具体取决于发生冲突时、表填满时、空表时发生的情况。
Map 听起来像是一种抽象数据结构,由可用操作定义(字典可能是相同数据结构的另一个名称,但如果某些命名法在某处定义了细微差别,我不会感到惊讶)。
HashMap 听起来像是使用 HashTable 具体数据结构的 Map 抽象数据结构的实现。
同样,如果一种语言或库同时提供两者,并且在某处有细微差别,我不会感到惊讶(例如,HashMap 只能提供为 Map 定义的操作,但 HashTable 提供了对 HashTable 有意义的所有内容)。
【讨论】: