Big-O нотация кода, который инициализирует массив и связанный список - PullRequest
0 голосов
/ 25 января 2020

Я пытаюсь лучше понять время выполнения.

Предположим, у меня есть код внутри моей функции, и каждый оператор имеет несколько различных временных сложностей:

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)?

1 Ответ

1 голос
/ 25 января 2020

Да, преобладающий термин отменяет все остальные (ну, это делает их незначительными в общем рассмотрении), поэтому сложность O (n ^ 2).

...