首页 > 解决方案 > 初始化数组和链表的一段代码的大 O 表示法

问题描述

我正在努力加深对运行时间的理解。

假设我的函数中有代码,并且每个语句都有一些不同的时间复杂度:

LinkedList myLL = new LinkedList(); //O(1)

myLL.addAtHead("1"); //O(1)
myLL.addAtHead("2"); //O(1)
myLL.addAtHead("3"); //O(1)

int[] myArray = new int[n] //O(n) , depending on what n is
<Some other statement> //O(n^2)

确定运行时间,它是 O(n^2) 吗?我们是否只考虑花费最多时间的语句并说总运行时间为 O(n^2)?

标签: time-complexity

解决方案


是的,流行的术语取消了所有其他的(嗯,这使得它们在整体考虑中微不足道),所以复杂度是 O(n^2)。


推荐阅读