public static LinkedList third(int[] array){
LinkedList retval = null;
for (int i = 0; i < 999 && i < array.length; i = i + 1) {
retval = new LinkedList(array[i], retval);
}
return retval;
}
为什么这段代码给出了大O = O(1)?
答案 0 :(得分:2)
因为循环将最多执行999次,这是一个常数值,因此您可以将其视为O(999)= O(1)= O(c),其中c是常数值。
如果i
的值不受999的限制,则循环将执行array.length
次,复杂度将为O(n),其中n是输入数组的大小。