自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java8 ConcurrentHashMap源码&原理解读,保姆级解读ο(=•ω<=)ρ⌒☆,并行/并发编程思想(持续更新)

前言之前研读过HashMap源码,实现过一遍HashMap源码。但是HashMap是线程不安全的,而ConcurrentHashMap是线程安全的,博主我觉得自己多线程方面差了点,遂决定去研究一番ConcurrentHashMap。这一看,emmm,妙呀,有时一个方法起码得研究好几天,打开一篇知识的海洋。笔者去年终于看完整个put方法的处理,〒▽〒,实现到扩容那里了。后面由于换工作,面试,这事就...

2020-05-03 19:03:10 689 1

原创 自己使用cglib/jdk动态代理实现@Transaction注解(事务管理+事务传播行为)

掘金地址前言为什么重复造轮子?  这个轮子是我去年就造了的,当时在上个东家做的是金融相关的,重视数据的一致性。我踩过一个坑(ノへ ̄、),导致我特别想知道这个spring 事务管理怎么做的。原因一  有一次。博主我负责的一个产品其中一个业务,主要用户使用道具,银行将资金从平台转到用户账上,银行处理成功后,发送MQ消息给我们平台;博主妹子我,写了一个幂等接口,也加了@Transaction(...

2020-03-29 23:29:34 1297 3

原创 KMP字符匹配算法原理

简介:KMP算法是一种改进的字符匹配算法。由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作(简称KMP算法)。 它的核心思想是,通过一个next[]数组,在匹配失败后,减少字符移动的距离,达到快速匹配的目的。要想彻底理解KMP算法,必须要知道几个核心概念: 最长相同前后缀:即从前往后找,从后往前找,相同前后缀中最长的字符串。 Nex...

2020-03-29 14:12:36 196

原创 红黑树原理和算法,超详细介绍(图,内附实现代码)

掘金链接二叉搜索树普通的二叉搜索树,如果是一颗平衡的二叉树。则n个节点查找的时间复杂度为O(log2n),近似折半查找。如果二叉搜索树完全不平衡,则会退化为一条链表它的时间复杂度为O(n)。因此为了解决这个问题,出现了avl树(自平衡二叉树)。嗯,它不重要,不是我要讲的重点。(~ ̄▽ ̄)~avl树avl树一个高度平衡的二叉树。它具有一下性质:它的左右子树的高度差绝对值不超过...

2020-03-26 17:30:34 950

原创 jdk8 HashMap源码解读(数学思想),亲自造数据实验其原理*(੭*ˊᵕˋ)੭*ଘ

掘金同步更新中概述HashMap是一种数组加链表形式的结构,跟准确的说是一个线程不安全链表数组结构。适合存放key-value键值对,做等值查找。java8及之后的改变  在java1.8之后,将HashMap做了优化。  首先,当链表节点个数大于8个以后,会将链表转换为一棵红黑树。至于为什么是8个,源码中的注释说,是做了大量随机数测试。  而后,就是面试经常喜欢问的,在多线程的情况...

2020-03-26 17:23:30 286 2

空空如也

空空如也

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

TA关注的人

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