哈希表与有序表
Set结构 key
Map结构 key-value
哈希表
哈希表的时间复杂度都是常数项级别的,但常数较大
增删改查的时间都是常数级别的,与数据量无关
当哈希表存储的值是基础数据类型(Integer - int),哈希表中内部是值传递的
拷贝一份基础数据类型,而非它本身。此时key中存储的大小为它本身的大小
当哈希表存储的值自定义的数据类型,此时哈希表使用引用传递
new出的一个新的对象A,A实际上存储的是该对象的内存地址,将内存地址存储到哈希表的key中,统一占的字节数为8个字节
借用一句比喻:按电脑系统来说,值传递就是复制一份到桌面,引用传递就是生成快捷方式到桌面
有序表
有序表内部根据key有序组织的,要求key能够比较。而哈希表内部无序组织key
实现功能:增删改查,最小最大,与某个值的比较关系
有序表的增删改查的时间复杂度都是O(logN)级别的
当有序表存储的值是基础数据类型时,有序表内部是值传递的
当有序表存储的是自定义的数据类型时,则必须提供比较器