HashMap的插入和查找的理想复杂度为O(1)

  1. hashmap容器O(1)的查找时间复杂度只是其理想的状态,而这种理想状态需要由java设计者去保证
  2. 在由设计者保证了链表长度尽可能短的前提下,由于利用了数组结构,使得key的查找在O(1)时间内完成
  3. 可以将hashmap分成两部分来看待,hash和map。map只是实现了键值对的存储,也就是以上查询步骤的第4步。而其整个O(1)的查找复杂度很大程度上是由hash来保证的。
  4. hashmap对hash的使用体现出一些设计哲学,如:通过key.hashCode()将普通的object对象转换为int值,从而可以将其视为数组下标,利用数组O(1)的查找性能

转载自https://blog.csdn.net/u014633283/article/details/48549155

你可能感兴趣的:(Java集合)