重点回顾
- 跳跃表是有序集合的底层实现之一,
除此之外它在 Redis 中没有其他应用。
- Redis 的跳跃表实现由
zskiplist
和 zskiplistNode
两个结构组成,
其中 zskiplist
用于保存跳跃表信息(比如表头节点、表尾节点、长度),
而 zskiplistNode
则用于表示跳跃表节点。
- 每个跳跃表节点的层高都是
1
至 32
之间的随机数。
- 在同一个跳跃表中,
多个节点可以包含相同的分值,
但每个节点的成员对象必须是唯一的。
- 跳跃表中的节点按照分值大小进行排序,
当分值相同时,
节点按照成员对象的大小进行排序。