Redis链表

Redis链表

  • C语言没有内置链表,Redis自己构建的链表

  • 链表在redis中的实现

  • 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;
    
  • 节点的实现:

  • typedef struct listNode {
        //前置节点
        struct listNode *prev;
        //后置节点
        struct listNode *next;
        //节点值
        void *value;
    }listNode;
    
  • 在这里插入图片描述

  • Redis链表实现的特性:

    1. 双端
    2. 无环:表头结点的prev和next都指向null,对链表的访问以null为终点
    3. 带有表头指针和表尾指针
    4. 带有链表长度计时器len
    5. 多态:链表节点用void*指针来保存值,可以存任意类型的值

相关推荐

  1. 2024-06-12 13:42:07       23 阅读
  2. <span style='color:red;'>链</span><span style='color:red;'>表</span>

    2024-06-12 13:42:07      14 阅读
  3. ——双向

    2024-06-12 13:42:07       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-12 13:42:07       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-12 13:42:07       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-12 13:42:07       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-12 13:42:07       20 阅读

热门阅读

  1. 微信小程序页面配置

    2024-06-12 13:42:07       5 阅读
  2. AWS无服务器 应用程序开发—第一章 目录

    2024-06-12 13:42:07       9 阅读
  3. MySQL密码复杂度策略配置

    2024-06-12 13:42:07       6 阅读
  4. 为什么选择Scala?大数据开发从入门到精通

    2024-06-12 13:42:07       8 阅读
  5. iPadOS 18支持的设备列表

    2024-06-12 13:42:07       7 阅读
  6. Python基础学习笔记(十)——初探正则

    2024-06-12 13:42:07       7 阅读
  7. QT 中文乱码 以及 tr 的使用

    2024-06-12 13:42:07       6 阅读
  8. 【docker实战】如何登陆到自己的私有仓库?

    2024-06-12 13:42:07       10 阅读