通过这篇文章你会知道如下:
- 如何对两个集合进行差集并集交集运算
- 集合应用场景有哪些

时间复杂度
-
添加和删除元素
sadd key element [element ...] 返回添加成功元素个数
srem key element [element ...] 返回删除成功元素个数 -
计算元素个数
scard的时间复杂度为O(1) , 它不会遍历集合所有元素, 而是直接用
Redis内部的变量
scard key
-
判断元素是否在集合中
如果给定元素element在集合内返回1, 反之返回0
sismember key element
-
随机从集合返回指定个数元素
[count]是可选参数, 如果不写默认为1
srandmember key [count]
-
从集合随机弹出元素
srandmember和spop都是随机从集合选出元素, 两者不同的是spop命令
执行后, 元素会从集合中删除, 而srandmember不会
spop key
获取所有元素
smembers和lrange、 hgetall都属于比较重的命令, 如果元素过多存在阻
塞Redis的可能性, 这时候可以使用sscan来完成
两个集合交集、并集、差集
sinter key [key ...] 交集
suinon key [key ...] 并集
sdiff key [key ...] 差集
将集合结果进行保存
sinterstore destination key [key ...]
suionstore destination key [key ...]
sdiffstore destination key [key ...]
应用场景

应用场景模型
