自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MD5的应用场景以及MD5 32位和16位的区别

MD5为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有MD5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。PS:写这篇文章的本意是把我在工作中使用的MD5加密技巧分享出来,和大家一起交流,可能应为水平有限会有遗漏之处望...

2019-08-31 20:42:46 1807

原创 理解ConcurrentHashMap

一、Java内存模型1.程序计数器:是一个数据结构,用于保存当前正常执行的程序的内存地址。Java虚拟机的多线程就是…2.Java虚拟机栈:线程私有的,与线程生命周期相同,用于存储局部变量表,操作栈,方法返回值。局部…3.本地方法栈:跟虚拟机栈很像,不过它是为虚拟机使用到的Native方法服务。4.Java堆:所有线程共享的一块内存区域,对象实例几乎都在这分配内存。5.方法区:各个线程共...

2019-08-28 23:53:37 158

转载 MySQL索引背后的数据结构及算法原理

一、定义索引定义:索引(Index)是帮助MySQL高效获取数据的数据结构。本质:索引是数据结构。二、B-Treem阶B-Tree满足以下条件:1、每个节点至多可以拥有m棵子树。2、根节点,只有至少有2个节点(要么极端情况,就是一棵树就一个根节点,单细胞生物,即是根,也是叶,也是树)。3、非根非叶的节点至少有的Ceil(m/2)个子树(Ceil表示向上取整,如5阶B树,每个节点至少有...

2019-08-27 17:22:11 107

原创 一致性Hash原理解析

一.什么是一致性Hash算法?顾名思义,该算法为了解决Hash算法一致性问题,一般的Hash算法,采用hash(比如用户id)%N,当新增或下线服务器时,用户id与服务器的映射关系会大量失效。一致性Hash则利用了hash环对其进行了改进,对最大整数(2^23)取模。具体实现思路:首先将N台服务器的ip地址映射到hash环上,然后对用户id同样映射到hash环,在环上服务器之间左侧的用户id会...

2019-08-24 23:35:01 110

原创 OewxcKxUCs

OewxcKxUCs

2019-07-23 15:33:03 69

转载 八种排序算法比较

https://blog.csdn.net/q2213065359/article/details/82801717转载1、稳定性归并排序、冒泡排序、插入排序。基数排序是稳定的选择排序、快速排序、希尔排序、堆排序是不稳定的2、时间复杂度最基础的四个算法:冒泡、选择、插入、快排中,快排的时间复杂度最小O(n*log2n),其他都是O(n2)排序法 平均时间 最差情形 稳定度 额外空间 备...

2019-03-25 22:50:03 190

原创 冒泡排序基本思想

原理:比较两个相邻的元素,将值大的元素交换至右端。(每次获得“最大”的数)思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较...

2019-03-25 22:41:46 1138

原创 Java面试之画出HashMap结构图,并说说HashMap和HashTable的区别

最简单的区别就是:HashTable现在基本不适用了,一是Hashtable是线程安全的,效率比较低;二大概是Hashtable没有遵循驼峰命名法吧。HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,可能是 HashMap中没有该键,也可能使该键所对应的值为null。因此,在HashMap中不能由get()方法来判...

2019-03-07 22:32:56 717

原创 Java面试之重载与重写的区别

Java面试之重载与重写的区别重载(Overloading):Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。重写(Overriding)在Java中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。如需父类中原有的方法,可使...

2019-03-07 22:07:17 105

空空如也

空空如也

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

TA关注的人

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