有顺序set
每个元素会关联一个double类型的score
skip list + hashtable
主要操作如下:
zadd :添加元素,如若存在,顺序会更新
zadd zset1 1 w1
zadd zset1 2 w2
zadd zset1 3 w2
zrange zset1 0 -1 withscores
zrem zset1 w1
zrange zset1 0 -1 withscores
zincrby zset1 3 w3
zincrby zset1 4 w4
zincrby zset1 4 w4
zrange zset1 0 -1 withscores
zrank zset1 w3 : 按照score从小到大排名,返回排名
zrevrank zset1 w3 :按照score从大到小排名,返回排名
zrevrange zset1 0 -1 withscores :从大到小排序,返回start到end的所有元素
zrangebyscore 返回set中score 在给定区间的元素
zrangebyscore zset1 3 4 withscores
zcount 返回set中score 在给定区间的元素个数
zount zset1 3 4
zcard :元素个数
zcard zset1
zscore :给定元素的score
zscore zset1 wo
zremrangebyrank :删除集合中排名在给定区间的元素
zrange zset1 0 -1 withscores
zremrangebyrank zset1 2 2
zrange zset1 0 -1 withscores
zremrangebyscroe :删除集合中score在给定区间的元素
操作结果图: