java - TreeMap 或 HashMap 更快

标签 java performance

我正在编写一个字典,它大量使用字符串作为 Map<String, Index> 中的键。 .我关心的是 HashMap 中的哪一个和 TreeMap在 map 中搜索键时会带来更好(更快)的性能吗?

最佳答案

鉴于没有多少碰撞, HashMap 将为您提供 o(1) 的性能(如果有很多碰撞,这可能会降低到潜在的 O(n),其中 N 是任何单个存储桶中的条目(碰撞)数)。另一方面,如果您想拥有某种平衡的树结构,可以产生 O(logN) 检索,则使用 TreeMaps。因此,这实际上取决于您的特定用例。但是如果你只想访问元素,不管它们的顺序如何,都使用 HashMap

关于java - TreeMap 或 HashMap 更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7057430/

相关文章:

java - 带有 RecyclerView 和 CollapsingToolbarLayout 的 CoordinatorLayout

.net - String.Substring 相对于其他字符串处理方法有多快?

php - 使用 Yii2 框架 Ajax 请求太慢

java - JNI : Overhead of holding Java object references within the native code?

performance - 我如何将 Prolog 的剪辑翻译成 Curry?

java - JPanel组件绘制顺序

java - 在 Hibernate 3.6.10.Final + c3p0 + struts2 中打开新连接时关闭连接

java - RedDot 与 Lotus Notes 支持

c# - 如何按总和的升序遍历所有大小为 K 的子集合。

java - 使用 Java 在 Openshift 上打开文件