比起之前那些问计数哈希表的题目,这道题好像更接近哈希表的底层机制. java中hashmap的实现是通过List<Node>,即链表的list,如果链表过长则换为红黑树,如果容量不足(装填因子下)则扩充数组容量.解决冲突的方式是直接接在对应位置的链表上. 首先看看哈希表几个操作的时间复杂度: HashMap的新增: 计算key的哈希值 哈希值作为index,找到对应的数组位置 如果数组位置为空,直接存入 如果数组位置不为空,遍历该链表,插入末尾 这里考虑理想情况(无冲突),时间复杂度为O1 H…