redis数据结构--链表

2019-04-21  本文已影响0人  MontyOak

首先,给出redis中链表节点的定义:

typedef struct listNode {
  struct listNode *prev; // 前置节点
  struct listNode *next; // 后置节点
  void *value; // 节点值域
}listNode;

可以看出,这里的链表是双端链表。下面是链表的定义:

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;
上一篇下一篇

猜你喜欢

热点阅读