自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java线程安全的集合

Vector和ArrayList类似,都是长度可变的数组,不同的是,Vector是线程安全的,它给几乎所有的public方法加上了synchronized关键字。由于加锁导致性能下降,在不需要并发访问某一对象时,强制性的同步机制会显得多余,Vector目前已被弃用。同样地,HashTable和HashMap类似,但HashTable是线程安全的,它也是给几乎所有的public方法加上了synchronized关键字。HashTable和HashMap的另一个不同点是HashTable的K和V不允许为空。

2024-03-09 10:39:11 536

原创 六大排序算法

排序算法可以分为内部排序和外部排序。内部排序指的是数据的排序全部在内存中完成,而外部排序指的是排序数据量很大,内存中一次不能全部容纳,需要依靠外部存储来完成排序。

2024-03-08 10:57:57 1061 2

原创 时间复杂度和空间复杂度

时间复杂度和空间复杂度

2024-03-07 09:31:45 417 1

原创 ArrayList源码分析

插入操作前,首先要判断size的长度,每插入一个元素,size自增一次,即使申请了10大小的容量,指定位置插入元素会依赖size进行判断,这时候并没有添加元素,size为0,从而抛出错误。当预先知道将插入到数组的元素的数量时,为了减少ArraryList的拷贝操作,直接初始化一个预先设定好的长度。一般情况下,通过空构造函数对ArraryList进行初始化,数组的长度在进行第一次数据的插入时进行设置。Arrays.asList 构建的集合,不能再删除元素。但以上的插入操作将导致错误。

2023-12-08 09:05:43 453 1

原创 HashMap:扰动函数、负载因子和扩容链表拆分

HashMap最早在出现在JDK1.2中,底层基于散列算法实现。HashMap允许出现null键和null值,当出现null键时,相对应的值为0,在HashMap中,键值对的顺序并不固定。而且HashMap是非线程安全类,在多线程环境下容易出现安全问题。提示:以下是本篇文章正文内容,下面案例可供参考。

2023-12-02 20:28:55 2277 1

原创 HTTPS加密算法原理

HTTP,Hyper Text Transfer Protocol,超文本传输协议,在计算机世界中两点之间传输文本、图片、音频、视频等超文本数据的一种规范。而HTTPS不是一种的新的协议 ,HTTPS协议建立在HTTP协议基础之上,在HTTP通信接口部分加入了 SSL(Secure Socket Layer)协议和TLS(Transport Layer Security)协议,使得HTTP先与SSL进行通信,SSL再与TCP通信。

2023-11-06 11:07:05 300 1

原创 在hashCode中,为什么是31作为乘数?

从实验结果中能够观察到,随着质数的乘数的增大,碰撞概率在逐渐减小,当乘数为偶数时,如2和32,碰撞概率依然很大,当乘数增大到31时,碰撞概率已经很小。探究不同乘数对碰撞概率的影响,实验中使用的乘数有2, 3, 5, 7, 17, 31, 32, 33, 39, 41, 199。探究不同乘数对散列分布的影响,实验中使用的乘数有2, 3, 5, 7, 17, 31, 32, 33, 39, 41, 199。统计出总的hash的个数和所有不同的hash值的个数,使用前者减去后者,得到碰撞的hash值的个数。

2023-11-02 12:16:19 1116 1

原创 yaml格式文件注意事项

SpringBoot的配置主要使用yml结尾的文件格式,在书写时可以通过提示的形式加载正确的格式。但是这种文件有着严格的书写格式要求的。具有容易阅读、容易与脚本语言交互、以数据为核心,重数据轻格式的特点。

2023-10-30 21:09:01 418

原创 char 和const char *的区别

char 和const char *的区别

2023-10-17 09:52:11 1876

原创 for (auto & c : str) 和 for (char c : str)的不同

for(auto &c:str)和for(char c:str)的不同

2023-10-16 09:30:23 432 1

原创 ipykernel_launcher.py:error:unrecognized arguments;An exception has occurred,use %tb to see the full

改为:args = parser.parse_args(args=[])将原代码 args = parser.parse_args()

2023-10-14 19:33:20 286 1

空空如也

空空如也

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

TA关注的人

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