首页 > 其他分享 >面试-集合

面试-集合

时间:2023-07-26 12:23:21浏览次数:46  
标签:扩容 index 容量 HashCode 链表 面试 Hashtable 集合

hashMap

扩容

大于当前容量0.75,扩容成2倍。创建一个新空数组,重新hash

初始容量

16
链表大于8转换为红黑树,小于6退化为链表

index

index = HashCode(Key) & (Length- 1)
index的结果等同于HashCode后⼏位的值。
只要输⼊的HashCode本身分布均匀,Hash算法的结果就是均匀的

hashTable

在很多方法上加锁,比如get
Hashtable 是不允许键或值为 null 的,HashMap 的键值则都可以为 null。
Hashtable 初始容量为:11,负载因⼦默认都是:0.75。
HashMap 扩容规则为当前容量翻倍,Hashtable 扩容规则为当前容量翻倍 + 1。

标签:扩容,index,容量,HashCode,链表,面试,Hashtable,集合
From: https://www.cnblogs.com/fxx5/p/17582153.html

相关文章

  • Redis的有序集合Zset为啥用跳表不用二叉树
    跳表和红黑树查找的时间复杂度都是logN,插入删除也是logN。范围查找貌似也都是O(k+logn),其中n是树中节点的数量,k是满足范围条件的节点数量。但是实现起来跳表要简单很多。1.zset有个很核心的操作叫范围查找,我们要查找某个范围区间的元素。跳表可以做到logN时间复杂度内的快......
  • Java面试题 P5:简述final作用
    1、简述final作用?final含义是最终的。(1)修饰类:表示类不可被继承,不可以有子类;(2)修饰方法:表示方法不可以被子类覆盖,但是可以重载;(3)修饰变量:表示变量一旦被赋值就不可以更改它的值。(4)修饰成员变量如果final修饰的是类变量,只能在静态初始化块中指定初始值或者声明该类变量时指定初......
  • 面试类-Java并发编程 (一)
    1.并行跟并发有什么区别?从操作系统的角度来看,线程是CPU分配的最小单位。并行就是同一时刻,两个线程都在执行。这就要求有两个CPU去分别执行两个线程。并发就是同一时刻,只有一个执行,但是一个时间段内,两个线程都执行了。并发的实现依赖于CPU切换线程,因为切换的时间特别短,所以基本......
  • Java面试常见问题总结
    Java面试常见问题总结Java基础Java中的几种基本数据类型是什么?对应的包装类型是什么?各自占用多少字节呢?String、StringBuffer和StringBuilder的区别是什么?String为什么是不可变的?Strings1=newString("abc");这段代码创建了几个字符串对象?==与equals?hashCo......
  • 面试-mq
    NameServer每个Broker在启动的时候会到NameServer注册,Producer在发送消息前会根据Topic到NameServer获取到Broker的路由信息,Consumer也会定时获取Topic的路由信息BrokerBroker负责消息存储,Broker是具体提供业务的服务器,单个Broker节点与所有的NameServer节点保......
  • AI面试官:Asp.Net 中使用Log4Net (三)
    AI面试官:Asp.Net中使用Log4Net(三)当面试涉及到使用log4net日志记录框架的相关问题时,通常会聚焦在如何在.NET或.NETCore应用程序中集成和使用log4net。以下是一些关于log4net的面试题目,以及相应的解答、案例和代码:目录AI面试官:Asp.Net中使用Log4Net(三)11.如何在log4net中......
  • AI面试官:Asp.Net 中使用Log4Net (二)
    AI面试官:Asp.Net中使用Log4Net(二)当面试涉及到使用log4net日志记录框架的相关问题时,通常会聚焦在如何在.NET或.NETCore应用程序中集成和使用log4net。以下是一些关于log4net的面试题目,以及相应的解答、案例和代码:目录AI面试官:Asp.Net中使用Log4Net(二)6.如何配置log4net,......
  • AI面试官:Asp.Net 中使用Log4Net (一)
    AI面试官:Asp.Net中使用Log4Net(一)1.先新建一个ASP.NETCore空项目目录AI面试官:Asp.Net中使用Log4Net(一)1.先新建一个ASP.NETCore空项目1.什么是log4net?它的作用是什么?2.log4net日志级别有哪些?如何设置日志级别?3.如何在.NETCore应用程序中使用log4net记录日志?4.log......
  • 记录--为啥面试官总喜欢问computed是咋实现的?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助从computed的特性出发computed最耀眼的几个特性是啥?1.依赖追踪import{reactive,computed}from'vue'conststate=reactive({a:1,b:2,c:3,})constsum=computed(()=>{returnstat......
  • 集合框架
    集合框架集合的概念概念:对象的容器,实现对对象常用的操作,类似数组功能和数组的区别:数组长度固定,集合长度不固定数组可以存储基本类型和引用类型,集合只能存储引用类型Collection接口Collection父接口特点:代表一组任意类型的对象,无序.无下标.不能重复方法:boole......