我的代码需要经常从一组已排序的 Redis 中获取得分最高的成员。
zrangebyscore 的时间复杂度为 O(logN): http://redis.io/commands/zrangebyscore 。 由于我只想获得最高分,Redis 会优化它以在 O(1) 时间内返回最高分成员吗?
最佳答案
如果您尝试频繁获取最高分数,以至于 ZRANGE 的复杂性成为一个问题,则可以独立于排序集缓存最高分数,这样您就能够以 O(1) 的时间复杂度获得最高分数。
关于Redis:从排序集中获取最高分成员仍然是 O(logN) 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25919761/