您的位置:首页 > 理论基础 > 数据结构算法

【Redis设计与实现】 读书笔记 数据结构与对象 链表

2018-08-23 20:52 525 查看

链表

简介

链表作为一种常用数据结构,链表内置在很多高级的编程语言里面,因为Redis使用的C语言并没有内置这种数据结构,所以Redis构建了自己的链表结构。
链表在Redis中应用非常广泛,比如列表建的底层实现之一就是链表。当一个列表键包含了数量比较多的元素,又或者列表中包含的元素都是比较唱的字符串时,Redis就会使用链表作为列表键的底层实现。

要点

  • 链表被广泛用于实现Redis的各种功能,比如列表建、发布与订阅、慢查询、监视器等
  • 每个链表节点由一个listNode结构来表示,每个节点都有一个指向前置节点和后置节点的指针,所以Redis的链表实现是双端链表。
  • 每个链表使用一个list结构来表示,这个结构带有表头节点指针、表尾节点指针,以及链表长度等信息。
  • 因为链表表头节点的前置节点和表尾节点的后置节点都指向NULL,所以Redis的链表实现是无环链表。
  • 通过为链表设置不同的类型特定函数,Redis的链表可以用于保存各种不同类型的值。

心得

这章主要是讲解Redis使用的链表,这个数据结构,和大多数语言实现的数据结构大同小异,还有一连串的API。

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: