函数max()
,它返回列表中的最大元素。 。 。根据{{3}}?
答案 0 :(得分:14)
它是O(n),因为它必须检查每个元素。如果您希望获得最佳性能,可以使用heapq模块。但是,您必须negate each value,因为heapq
提供了最小堆。将元素插入堆中的是O(log n)。
答案 1 :(得分:1)
当然它是O(n),除非你使用不同的数据结构支持最大的值集合,因为某些实现是不变的。
答案 2 :(得分:1)
这取决于你如何使用它。
如果你想基于函数“someFunc”进行最大化,那么它将需要O(len(l)*k)
,其中k是时间函数“someFunc”运行。
maxVal = max(l, key=somefunc)
但是对于正常情况,它应该只是迭代列表并使用正常比较函数找到最大值。