Нотация с голямо О е колко трудно алгоритъмът трябва да работи, за да реши проблем или, казано от техническа гледна точка, най-лошото време за изпълнение на алгоритъм.

O(1) — Алгоритъм за постоянно изпълнение.

Това е алгоритъм, който връща елемент в известна позиция, независимо от размера на данните или масива. Например, проектиране на алгоритъм за тестване дали първият елемент от масива е равен на втория.

O(n) — Линеен алгоритъм за изпълнение

За този алгоритъм броят на итерациите нараства с броя на елементите на масива. Това се изразява като (n-1), където n е броят на елементите на масива. Ако масивът има 10 елемента, алгоритъмът ще изисква 9 сравнения.

O(n2) — Квадратичен алгоритъм за изпълнение

Това повдига на квадрат броя на итерациите или дори учетворява. Да предположим, че имате алгоритъм, който тества дали даден елемент от масива е дублиран другаде в масива. При тестване първият елемент трябва да се сравнява с всеки друг елемент в масива. Вторият елемент трябва да се сравнява с всеки друг елемент, с изключение на първия. Третият елемент трябва да се сравни с всеки друг елемент в масива, с изключение на първите два.

O(log n) — Логаритмичен алгоритъм за изпълнение

Алгоритъмът разделя данните на по-малки части, за да ги реши в итерация. Този алгоритъм е идеален за много големи данни.

Това беше кратка статия, но се надявам да даде малко представа,

Благодаря ти.