每个链表结构使用list结构体来表示:
typedef struct list {
listNode *head;
listNode *tail;
unsigned long len;
void *(*dup)(void *ptr); //节点值复制函数
void (*free)(void *ptr); //节点值释放函数
int (*match)(void *ptr,void *key); //节点值对比函数
}list;
每个节点使用一个listNode结构表示:
typedef struct listNode{
struct listNode *prev;
struct listNode *next;
void *value
}listNode;
Redis 链表特性:
双向链表
无环
头尾O(1)
链表长度O(1)
多态:保存多种类型的值
本文深入探讨了Redis中链表的实现方式,包括其结构定义、特性及应用场景。Redis链表采用双向无环结构,提供了头尾操作和链表长度查询的高效性能,能够保存多种类型的数据。
768

被折叠的 条评论
为什么被折叠?



