小编典典

为什么zpopmin时间复杂度是log n?

redis

来自redis doc:

ZPOPMIN键[count]自5.0.0起可用。

时间复杂度:O(log(N)* M),其中N为排序集中元素的数量,M为弹出元素的数量。

删除并返回存储在key排序集中的得分最低的成员。

因此,我的问题是,如果列表已排序,为什么要使用log n,为什么不使用O(1)?


阅读 503

收藏
2020-06-20

共1个答案

小编典典

如果 列表 已排序,为什么要使用log n,为什么不使用O(1)?

如果使用列表实现排序集,则实际上您可以在每个元素的O(1)时间中完成此操作。然而,分类是一组实现(部分地)与跳跃列表数据结构,其确实的插入和缺失O(日志(N))的时间。

2020-06-20