自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Hashmap详解(底层结构,扩容机制,put过程)

i.如果是链表节点,则使用尾插法插入到链表的最后位置,由于使用尾插法,则需要进行遍历链表,如果链表中存在相同的 key,则更新key中的value,如果没有,则直接插入,最后需要进行判断链表长度是否为8,数组长度是否达到64,如果达到则需要进行转换成红黑树。0.75,16,当桶的数量达到数组整体长度的0.75,则会发生扩容,扩容为之前的两倍,最大长度为64,而0.75的负载因子并为是固定的,我们可以自己设置,但是0.75的效果是最好的。此时hashmap的数据结构为数组加链表(插入链表使用的是头插法)

2023-05-26 15:40:18 160 1

原创 SpringBoot的自动装配原理

or接口,因此必须重写selectImports方法,该方法读取需要被自动装配的组件依赖下的spring.factories文件配置的组件的类全名并按照一定的规则过滤掉不符合要求的组件的类全名,将剩余读取到的各个组件的类全名集合返回给IOC容器并将这些组件注册为bean。在SpringBoot项目中,引入第三方服务jar包的时候,我们开发者并不需要把其中的配置类进行IOC的bean的注册,直接通过注解或者进行简单的配置使用即可,这使得我们开发者更多的关注业务代码,而不需要关注这些非业务代码。

2023-05-23 19:09:31 98 1

原创 力扣热门题之盛最多水的容器(双指针解法)

于是我们采用双指针,一个指针指向第一位数为i,另一个指针指向最后一个数为j,而容器的容量还是取决于短板的高,容器的容量计算公式为(j-i)*height[较短的指针],从公式我们可以判断,如果指针移动的是长板,(j-i)一定会变小,而height[较短的指针]要么不变,要么变得更小,所以移动长板的指针是不行的,我们再看移动短板的指针(j-i)一定会变小,而此时不一样的是短板可能会增大,所以要想获得更大的容量,我们只能移动短板。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。

2023-05-13 21:00:00 95 1

原创 力扣热门题之寻找两个正序数组的中位数(奇怪解法)

思路:创建一个新的数组,长度为两个原数组长度之和,接着将两个原数组的值赋值到新目标数组中,此时使用sort方法将新目标数组进行排序,再进行判断,如果目标数组的长度是2的倍数,需要将数组中间的两位数相加然后除2再等于最终结果(注意如果是直接进行除2操作,得到的值是中间两位数中较大的一位),如果不是2的倍数,可以直接拿到值返回即可,使用该解法需要注意目标数组的长度。解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5。解释:合并数组 = [1,2,3] ,中位数 2。

2023-05-12 22:52:29 108

原创 力扣热门题之两数之和(纯纯暴力法)

直接两次遍历数组,判断遍历出来的两个数相加是否会等于目标数,要注意内循环遍历之时,要记得在外循环遍历数的基础上加一,否则会有重复遍历头数的情况,最后将得到的结果直接进行返回即可。给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。输入:nums = [2,7,11,15], target = 9。经过提交测试,能通过全部测试。

2023-05-11 21:25:26 107 1

原创 力扣热门题之三数之和(纯纯暴力法)

在我第一次使用暴力法遍历之时,求出来的解是带有重复的解的(这题的重点貌似就是去重),于是一开始想着用stream的distinct查看然后接着去重,想着想着set不就是刚刚好去重的吗,于是直接用的set去添加元素,这时又出现问题了,问题就是set中装着的是一个list数组,如果其中list数组中元素排序不一样的话,set还是会认为这是不相同的元素。不同的三元组是 [-1,0,1] 和 [-1,-1,2]。输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]

2023-05-10 22:54:40 151

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除