一、简介
- Redis set对外提供的功能与list类似是一个列表的功能,set可以自动去重。
- set提供了判断某个成员是否在一个set集合内的重要接口。
- set是string类型的无序集合。它的底层其实是一个value为null的hash表,所以添加、删除、查找的时间复杂度都是o(1)
二、常用命令
-
sadd 将一个或多个member元素加入到集合key中。
-
smembers 取出该集合的所有值。
-
sismember 判断集合中是否含有值。
-
scard 返回集合中元素个数。
-
srem 删除集合中的某个元素。
-
spop 随机从集合中弹出一个值。
-
srandmember 随机从集合中取出几个值,不会删除值。
-
smove 把集合中的一个值移到另一个集合。
-
sinter 返回两个集合的交集
-
sunion 返回两个集合的并集
-
sdiff 返回两个集合的差集
三、数据结构
set数据结构是dict字典,字典是用哈希表实现的。