JavaScript中的字典数据结构


在计算机科学中,关联数组、映射、符号表或字典是一种抽象数据类型,它由一组 (键,值) 对组成,使得每个可能的键在集合中最多出现一次。请注意,字典也称为映射。

字典问题是一个经典的计算机科学问题:设计一种数据结构的任务,该数据结构在“搜索”、“删除”和“插入”操作期间维护一组数据。字典有很多不同类型的实现。

  • 哈希表实现
  • 基于树的实现(自平衡树和非平衡树)
  • 基于列表的实现

何时使用字典

字典并非万能药,不能在任何情况下都使用。它们在许多情况下很有用,但在决定使用字典来解决问题之前,需要记住以下几点。

  • 插入通常很慢,读取比树快。
  • 将这些用于快速查找,例如缓存数据、索引数据库、符号表等。
  • 当元素的顺序无关紧要时。
  • 当所有元素键都是唯一的时候。

我们将实现的方法

字典通常具有定义良好的 API。我们将实现一个非常基本的字典 API,如下所示:

  • get(): 获取具有输入键的元素
  • put(): 将键值对放入字典中
  • hasKey(): 检查字典中是否存在键
  • delete(): 从字典中删除给定的键
  • clear(): 从字典中删除所有键值对
  • keys(): 将所有键作为数组返回
  • values(): 将所有值作为数组返回

更新于:2020年6月15日

1K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告