-2
会是什么大O记法的简单功能,如:大O符号,为什么
def function(array, index):
return array[index]
这将是线性的,因为它看起来在阵列中的每个单元格?或不变?为什么?
会是什么大O记法的简单功能,如:大O符号,为什么
def function(array, index):
return array[index]
这将是线性的,因为它看起来在阵列中的每个单元格?或不变?为什么?
这取决于对象的类型。如果array
是一个Python列表对象,它将是O(1)。如果它是一个链表,它将是O(n)。如果它是二叉树,它可能是O(log n)。
换句话说,除了将操作委托给另一个对象的函数没有明确的复杂性。这完全取决于该操作的成本。
这是恒定的,因为无论您的输入有多大,它都只能访问一件事。 – Casey
不变。它不看每个单元格,它只查看一个单元格。 –
O(1):见https://wiki.python.org/moin/TimeComplexity – dfri