Redis通过哈希表实现高效的键值对查询。
查询流程如下:
- 使用哈希函数计算键的哈希值
hash。 - 通过
hash & (size - 1)计算出索引index。 - 如果
table[index]为空,则查询失败。 - 遍历
table[index]指向的碰撞链。 - 如果找到目标键,则返回指向值的指针;否则返回空值。
Redis查询的最佳时间复杂度为 O(1),最坏情况为 O(n)。 增删改操作的流程与查询类似。
Redis通过哈希表实现高效的键值对查询。
查询流程如下:
hash。hash & (size - 1) 计算出索引 index。table[index] 为空,则查询失败。table[index] 指向的碰撞链。Redis查询的最佳时间复杂度为 O(1),最坏情况为 O(n)。 增删改操作的流程与查询类似。