跳表
redis的hset原理
在 Redis 中,`HSET` 命令用于为哈希表中的字段设置值。哈希表是 Redis 中的一种数据结构,用于存储键值对,其中每个键都映射到一个值。`HSET` 命令的原理涉及以下几个方面:1. 哈希表存储结构: - Redis 的哈希表采用类似于散列表(hash table)的结构,通过哈希函数将键映射到哈希槽上。 - 哈希表中的每个槽上存储着一个链表或跳表,用于解决...
redis为什么使用跳表实现有序集合而不是红黑树
redis为什么使⽤跳表实现有序集合⽽不是红⿊树⼀、什么是跳表? 为⼀个值有序的链表建⽴多级索引,⽐如每2个节点提取⼀个节点到上⼀级,我们把抽出来的那⼀级叫做索引或索引层。如下图所⽰,其中down表⽰down指针,指向下⼀级节点。以此类推,对于节点数为n的链表,⼤约可以建⽴log2n-1级索引。像这种为链表建⽴多级索引的数据结构就称为跳表。⼆、跳表的时间复杂度?1.计算跳表的⾼度&nb...
详解Redis数据结构之跳跃表
详解Redis数据结构之跳跃表⽬录1、简介1.1、业务场景1.2、skiplist2、跳表2.1、跳表简介2.2、跳表层级之间的关系2.3、跳表的复杂度3、Redis中的跳表3.1、zskiplistNode3.2、zskiplist1、简介我们先不谈Redis,来看⼀下跳表。1.1、业务场景场景来⾃⼩灰的算法之旅,我们需要做⼀个拍卖⾏系统,⽤来查阅和出售游戏中的道具,类似于魔兽世界中的拍卖⾏那样...