首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
余某
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
60
文章 59
沸点 1
赞
60
返回
|
搜索文章
赞
文章( 59 )
沸点( 1 )
Redis中的强大的数据结构跳跃表(skiplist)的内部详解及实际运用
跳跃表结构在 Redis 中的运用场景只有一个,那就是作为有序列表 (Zset) 的使用。跳跃表的性能可以保证在查找,删除,添加等操作的时候在对数期望时间内完成,这个性能是可以和平衡树来相比较的,而且在实现方面比平衡树要优雅,这就是跳跃表的长处。跳跃表的缺点就是需要的存储空间比…
SkipList的那点事儿
Skip List(跳跃表)是一种支持快速查找的数据结构,插入、查找和删除操作都仅仅只需要O(log n)对数级别的时间复杂度,它的效率甚至可以与红黑树等二叉平衡树相提并论,而且实现的难度要比红黑树简单多了。 Skip List主要思想是将链表与二分查找相结合,它维护了一个多层…
你真的了解跳跃表吗
最近换了工作,因为工作的需要,也正好自己想好好研究一下 Java 这门牛逼的语言,看了一下 ElasticSearch 和 Lucene 的源码,之前从来没有写过也没有看过 Java 的东西,所以也算是恶补了一下 Java 吧,由于是从 C 程序员开始的,所以对这种带虚拟机的语言总有一些偏见,老觉得内…
用 Golang 写一个搜索引擎(0x03)--- 跳跃表,哈希表
前面已经说了倒排索引的基本原理了,原理非常简单,也很好理解,关键是如何设计第二个倒排表,倒排表的第二列也很好设计,第一列就是关键了,为了满足快速查找的性能,设计第一列的结构,我们需要满足以下两个条件。 查找非常快,能在极短的时间内找到我们需要的关键词所在的位置。 添加关键词也需…
Redis 的基础数据结构(二) 整数集合、跳跃表、压缩列表
上篇文章写了 Redis 基础数据结构的可变字符串、链表、字典。大家可以点击链接查看。今天我们继续研究 Redis 的基础数据结构。 当一个集合只包含整数,且这个集合的元素不多的时候,Redis 就会使用整数集合 intset 。首先看 intset 的数据结构: 其实 int…
漫画:什么是ZooKeeper?
Zookeeper的数据模型是什么样子呢?它很像数据结构当中的树,也很像文件系统的目录。 树是由节点所组成,Zookeeper的数据存储也同样是基于节点,这种节点叫做Znode。 这样的层级结构,让每一个Znode节点拥有唯一的路径,就像命名空间一样对不同信息作出清晰的隔离。 …
漫画:高并发下的HashMap
这一期我们来讲解高并发环境下,HashMap可能出现的致命问题。 HashMap的容量是有限的。当经过多次元素插入,使得HashMap达到一定饱和度时,Key映射位置发生冲突的几率会逐渐提高。 这时候,HashMap需要扩展它的长度,也就是进行Resize。 HashMap的当…
深入理解Redis的scan命令
熟悉Redis的人都知道,它是单线程的。因此在使用一些时间复杂度为O(N)的命令时要非常谨慎。可能一不小心就会阻塞进程,导致Redis出现卡顿。 有时,我们需要针对符合条件的一部分命令进行操作,比如删除以test_开头的key。那么怎么获取到这些key呢?在Redis2.8版本…
Redis 源码阅读笔记(3)-- 字典 dict
介绍 Redis 中的字典实现
下一页
关注了
10
关注者
1
收藏集
10
关注标签
2
加入于
2017-03-02