From 8391c9b93e7c9864d1e7fe8ec76990f924d0c172 Mon Sep 17 00:00:00 2001 From: cjvox <121037220+cjvox@users.noreply.github.com> Date: Sat, 12 Oct 2024 10:33:22 +0800 Subject: [PATCH] Update redis-skiplist.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充redis跳表部分 --- docs/database/redis/redis-skiplist.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/database/redis/redis-skiplist.md b/docs/database/redis/redis-skiplist.md index 0af16de3..9dbe2da1 100644 --- a/docs/database/redis/redis-skiplist.md +++ b/docs/database/redis/redis-skiplist.md @@ -598,6 +598,10 @@ Node{data=20, maxLevel=1} Node{data=21, maxLevel=3} Node{data=23, maxLevel=1} ``` +# Redis跳表的特点 +1. 采用**双向链表**,不同于上面的示例,存在一个回退指针。主要用于简化操作,例如删除某个元素时,还需要找到该元素的前驱节点,使用回退指针会非常方便。 +2. score值可以重复,如果score值一样,则按照ele(节点存储的值,为sds)字典排序 +3. Redis 跳跃表默认允许最大的层数是32,被源码中 ZSKIPLIST_MAXLEVEL 定义。 ## 和其余三种数据结构的比较