Advertisement

Redis 数据结构与对象(涉及六种底层数据结构)——字典

阅读量:

字典

该文献中所提及的"字典"也可称为"符号表"(symbol table)、"关联数组"(associative array)或"映射"(map),其核心功能在于存储键值对(key-value pairs)。每个键都是独一无二的,并可通过特定键快速定位与其相关联的值;同时支持对其存入的信息进行更新或删除操作。

Redis 的 键值 对 存储 主要是 通过 字典 实现 的 , 散 列 ( Hash ) 的 核 心 机 制 之 一 也 是 字 典 。

(1)字典的定义实现

Redis字典的核心结构基于哈希表实现;单个哈希表可容纳多个独立的哈希表节点;每个节点负责存储字典中的一个键值对。

哈希表结构定义:

复制代码
    typedef struct dictht {
    // 哈希表数组
    dictEntry **table;
    // 哈希表大小
    unsigned long size;
    // 哈希表大小掩码,用于计算索引值,等于size-1
    unsigned long sizemask;
    // 哈希表已有节点的数量
    unsigned long used;
    } dictht;

哈希表基于数组table构成,并由其中每一个元素指向指定的dict.h/dictEntry结构;哈

全部评论 (0)

还没有任何评论哟~