- 2
- 0
- 约1.82万字
- 约 18页
- 2022-02-22 发布于吉林
- 举报
17|跳表:为什么Redis一定要用跳表来实现有序集合?
17|跳表:为什么Redis一定要用跳表来实现有序集合?
上两节我们讲了二分查找算法。当时我讲到,因为二分查找底层依赖的是数组随机访问的特性,所以只能用数组来实现。如果数据存储在链表中,就真的没法用
二分查找算法了吗?
实际上,我们只需要对链表稍加改造,就可以支持类似“二分”的查找算法。我们把改造之后的数据结构叫作跳表 (Skip list),也就是今天要讲的内容。
跳表这种数据结构对你来说,可能会比较陌生,因为一般的数据结构和算法书籍里都不怎么会讲。但是它确实是一种各方面性能都比较优秀的动态数据结构 ,可
以支持快速的插入、删除、查找操作,写起来也不复杂,甚至可以替代红黑树 (Red-black tree )。
Redis中的有序集合(Sorted Set)就是用跳表来实现的。如果你有一定基础,应该知道红黑树也可以实现快速的插入、删除和查找操作。那Redis为什么会选择用跳
表来实现有序集合呢? 为什么不用红黑树呢?学完今天的内容,你就知道答案了。
“ ”
如何理解 跳表 ?
对于一个单链表来
您可能关注的文档
最近下载
- 哈曼卡顿AVR-151功放中文说明书.docx VIP
- 《婴幼儿回应性照护》 课件 项目4--6 盥洗和如厕中的回应性照护 ---游戏活动的回应性照护 .pptx
- 水电站安全预测预警制度.docx VIP
- 湘教版初中数学七年级下册《不等式的性质(第一课时)》教学设计.docx VIP
- 《婴幼儿回应性照护》 课件 项目1--3 认识婴幼儿回应性照护 --- 饮食饮水中的回应性照护.pptx
- 哈曼卡顿AVR151功放中文说明书(打印).docx VIP
- 2026年福建泉州编制国企招聘行政职业能力测验含答案试题及答案.doc
- 血透室医院感染暴发应急预案演练脚本 (2).docx VIP
- 新22S6 消防工程 (建筑图集).docx VIP
- pantone色卡电子版下载.pdf VIP
原创力文档

文档评论(0)