![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 91
软件开发随心记
这个作者很懒,什么都没留下…
展开
-
聊聊Java中的LinkedList实现原理
前言谈到Java中的List,一般我们使用最多的就是ArrayList。众所周知,ArrayList是使用数组来实现,然而还有另外一种数据结构也能实现List,就是我们熟悉的链表。在Java中对应的就是LinkedList,下面我们就通过分析Java的LinkedList的源码来了解其中的实现。LinkedList的实现LinkedList的定义public class LinkedList<E> extends AbstractSequentialList<E>原创 2020-12-19 00:55:17 · 422 阅读 · 2 评论 -
开发常用算法-哈希算法
前言程序员对哈希算法应该都不陌生,比如业界著名的MD5、SHA、CRC等等;在日常开发中我们经常用一个Map来装载一些具有(key,value)结构的数据,利用哈希算法O(1)的时间复杂度提高程序处理效率,除此之外,你还知道哈希算法的其他应用场景吗?1. 什么是哈希算法?了解哈希算法的应用场景前,我们先看下散列(哈希)思想,散列就是把任意长度的输入通过散列算法变换成固定长度的输出,输入称为Key(键),输出为Hash值,即散列值hash(key),散列算法即hash()函数(散列与哈希是对hash的不原创 2020-06-14 16:04:44 · 560 阅读 · 0 评论 -
计数式布隆过滤器(counting bloom filter)Redis实现分析
计数式布隆过滤器(counting bloom filter)Redis实现分析原创 2019-10-20 22:29:17 · 6398 阅读 · 0 评论 -
一致性算法Raft的原理简介与源码初探
目录一、Raft算法背景二、与Paxos算法的比较第一个是 Paxos 太难以理解。第二个是它难以在实际环境中实现。三、Raft算法简介领导者选举日志复制安全性一图了解Raft算法四、Raft源码简介一、Raft算法背景Raft是一种共识算法,旨在替代Paxos。 它通过逻辑分离比Paxos更容易理解,但它也被正式证明是安全的,并提供了一些额外的功能(维基百科)。它通过日志复制来实现的一致性,...原创 2018-12-10 01:20:05 · 1582 阅读 · 0 评论 -
程序猿回到过去:红花会与布隆过滤器
这是一个台风夜,雨还在下,敲着窗户,叮叮当当。阿智终于写完最后一行代码,合上了笔记本电脑。他看了看时钟,23点56分,他笑着说了一声“今天好早啊”。阿智还没有女朋友,自从做了一名程序猿,每天晚上都是机械键盘的响声陪着他到深夜。偶尔他也觉得这种生活有点苦闷,不过还好不知道从什么时候开始阿智迷上了金庸的武侠小说,每天工作完后他总要看上那么一段时间。沉浸在武侠世界里面的阿智直觉得天地开阔了很多,潇洒而自...原创 2019-08-26 08:03:45 · 215 阅读 · 0 评论