为什么数组插入的时间复杂度是O(n)而不是O(n + 1)?

时间:2016-09-09 13:18:27

标签: arrays algorithm data-structures time-complexity

我刚开始学习数据结构,在进行数组插入时,我想知道为什么数组插入O(n)的时间复杂度而不是O(n + 1)?

在最好的情况下,当插入位于最后一位时,时间复杂度为O(1)。我想我们正在考虑1插入元素,因为这里没有移动任何元素。 在最坏的情况下,假设我们必须移动n个元素然后插入新元素,那么时间复杂度是否应该为O(n + 1)? n用于移动元素,1用于插入元素。

非常感谢帮助。谢谢。

1 个答案:

答案 0 :(得分:7)

任何O(n)函数也是O(n + 1),反之亦然。低阶项基本上被忽略,因此+1不会产生任何有意义的贡献。