请问js里面Map和Set 存和取得时间复杂度

请问js里面对于Map和Set,存和取的时间复杂度?有大佬研究过这个问题吗?Java里面对应的HashMap在js中有相应的实现吗

阅读 9.9k
2 个回答

MapSet 仅仅作为 JS 中的类型出现,并没有所谓的规范源码,其实现完全取决于各家浏览器的 JS 引擎怎么做。

以 Chrome 的 V8 引擎为例,其有关 Map 的源码在 https://github.com/v8/v8/blob... 中,感兴趣可以自己去阅读。主要运用的是 Hash Table,时间复杂度是 O(1)。

讲道理是O(1).
虽然浏览器的实现没有约束,但是哈希表可以实现O(1)存取时间复杂度,浏览器没理由实现得更差吧。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题