【发布时间】:2020-05-26 18:28:10
【问题描述】:
我知道这是一些基本问题,但我不擅长基本问题。我只知道 for stack pop() 方法以 O(1) 时间弹出最后一个元素。
在python中,它允许弹出列表中的任何位置以及插入元素到任何位置,即list.pop(index)和list.insert(index, item)。如果一个列表的长度是n,它们的平均时间复杂度是多少?
另外,list.insert(index, item)和list = list[:index] + [item] + list[index:]有区别吗?
非常感谢您的帮助!
【问题讨论】:
-
O(n);预计要移动的项目数仍约为 n/2:(1 + 2 + 3 + ... + n)/n。
标签: python list time-complexity