在阅读不同的数据结构时,发现编译器使用的符号表被归类为数据结构。
有人可以解释符号表数据结构和哈希映射之间的区别吗?
答案 0 :(得分:4)
符号表本身不是 a 数据结构。大多数编译器都需要一个或多个符号表,但它们的精确形式不限于一个特定的数据结构。 某些编译器可能会选择将其符号表实现为哈希映射,如果它适用于它们的目的。
所以我说差异是概念。 “符号表”按其目的描述数据结构。 “哈希映射”通过其实现来描述数据结构。
Wikipedia page并不太糟糕
答案 1 :(得分:4)
首先,Symbol table
不是 数据结构。 Symbol table
是计算机科学中的抽象数据类型(ADT)。这个ADT的另一个常见名称是字典。
ADT的实现称为数据结构。 Symbol Table
ADT有许多实现(也就是数据结构)。一种这样的实现是哈希映射。 Symbol Table
的各种可能实现,但不限于以下内容:
注意:您可能还想阅读this主题以了解ADT与数据结构之间的区别。
答案 2 :(得分:2)