相关疑难解决方法(0)

heapq.nlargest如何工作?

我正在看这个pycon谈话,34:30,发言人说,获取t元素列表中最大的n元素可以完成O(t + n).

怎么可能?我的理解是创建堆将是O(n),但nlargest它本身的复杂性是它O(n + t)还是O(t)(以及实际算法是什么)?

python algorithm heap time-complexity

18
推荐指数
2
解决办法
6149
查看次数

在字典python中找到前k个最大的键

可以说我有一本字典:

{key1:value1........... keyn:valuen}
Run Code Online (Sandbox Code Playgroud)

所以我想说我想写一个函数

def return_top_k(dictionary, k):

    return list_of_keys_sorted   
Run Code Online (Sandbox Code Playgroud)

获得具有前k个值的键(保持顺序,即最高值键出现在开头......等等),最有效的方法(就大O而言)是多少.

python

8
推荐指数
2
解决办法
1万
查看次数

标签 统计

python ×2

algorithm ×1

heap ×1

time-complexity ×1