2021
12-13
12-13
浅谈hashmap为什么查询时间复杂度为O(1)
hashmap为什么查询时间复杂度为O(1)Hashmap是java里面一种类字典式数据结构类,能达到O(1)级别的查询复杂度,那么到底是什么保证了这一特性呢,这个就要从hashmap的底层存储结构说起下来看一张图:上面就是hashmap的底层存储示意图,要想查看一个键值对应的值,首先根据该键值的hash值找到该键的hash桶位置,即是tab[2]还是tab[1]等,计算某个键对应的哈希桶位置很简单,就是intpos=(n-1)&hash,也就是hash%n,因为位运算效...
继续阅读 >