手写 Redis 数据结构,用 Java 代码以及 C 代码编写跳跃表实现
跳跃表是一种有序的数据结构,从执行效率上甚至可以与平衡树相媲美,并且其实现比平衡树更加的简单,所以很多程序会优先使用跳跃表来替代平衡树。本节 Chat 将带领大家从时间复杂度分析、数据结构定义、接口设计、编码实现,来分析跳跃表是如何通过以空间换时间的方式提高执行效率,并且将其编写。为了配合同学的学习方向,笔者会从 Java 以及 C 语言两套代码进行编写讲解,同学可以自行选择阅读。
本节 Chat 你将收获:
- 时间复杂度计算,即大 O 记法
- 从绘图的形式了解跳跃表实现原理
- 跳跃表 API 设计
- 手把手编写接口实现
- 提供 Chat 涉及的源码
适合人群:
- 正在学习 Redis 的同学
- 了解链表
- 具备 Java SE 基础或者有 C 语言和指针基础
阅读全文: http://gitbook.cn/gitchat/activity/5da153693d5afa56c69b6379
您还可以下载 **** 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。