首页 > 解决方案 > Redis - 排序集 ZRANGE 性能

问题描述

我真的对 redis 排序集感到困惑。

假设我在排序集中有 N 个项目。我假设每当我添加一个项目时,它都会在集合中排序。

如果我需要最低分的项目,我必须使用这个。

ZRANGE myitem 0 0

但是为什么是性能是O(log(N))。O(1)如果它已经排序并获得最低分的项目,是否应该不是?

https://redis.io/commands/zrange

标签: redis

解决方案


文档中所述,Redis 使用跳过列表来实现排序集。跳过列表的查找时间为 O(log n)。

这里还有其他答案更详细地介绍了此数据结构的使用,例如,请参见此处。


推荐阅读