面试01

Redis的数据类型有哪些,底层怎么实现?

Redis对象类型简介

Redis是一种key/value型数据库,其中,每个key和value都是使用对象表示的。比如,我们执行以下代码:

redis>SET message "hello redis"

其中的key是message,是一个包含了字符串"message"的对象。而value是一个包含了"hello redis"的对象。

Redis共有五种对象的类型,分别是:

  • 类型常量 对象的名称
    REDIS_STRING 字符串对象
    REDIS_LIST 列表对象
    REDIS_HASH 哈希对象
    REDIS_SET 集合对象
    REDIS_ZSET 有序集合对象





底层数据结构共有八种,如下表所示:

编码常量 编码所对应的底层数据结构
REDIS_ENCODING_INT long 类型的整数
REDIS_ENCODING_EMBSTR embstr 编码的简单动态字符串
REDIS_ENCODING_RAW 简单动态字符串
REDIS_ENCODING_HT 字典
REDIS_ENCODING_LINKEDLIST 双端链表
REDIS_ENCODING_ZIPLIST 压缩列表
REDIS_ENCODING_INTSET 整数集合
REDIS_ENCODING_SKIPLIST 跳跃表和字典


https://blog.csdn.net/caishenfans/article/details/44784131



求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。

class Solution {
public:
    int Sum_Solution(int n) {
        int ans = n;
        // 利用 短路特性结束循环  也可以用 if (ans != 0),
        ans && (ans += Sum_Solution(n - 1)); //递归加
        return ans;
    }
};



#面试题目##Redis#
全部评论
为啥准备面试的题目咯?
点赞 回复
分享
发布于 2021-01-20 18:27

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务