O(1) — константна складність

O(1) — константна складність

Що це означає? Що алгоритм завжди виконується за однакову кількість операцій, незалежно від обсягу даних. Це золото. Це те, що хочеться бачити в критичних місцях: перевірка прав, доступ до кешу, отримання значення з асоціативного масиву.

Приклад: пошук елемента в хеш-таблиці

$array = ['a' => 1, 'b' => 2, 'c' => 3];
$value = $array['b'];

У цьому прикладі ми одразу знаходимо значення за ключем. Час виконання не залежить від розміру $array — хоч там 3 елементи, хоч 3000. Жодних циклів або рекурсії — це і є O(1).

Цей тип складності зустрічається в PHP та інших технологіях частіше, ніж здається — і чим краще ви його впізнаєте, тим точніше зможете писати оптимальний код. Так, наприклад, працює сховище Redis, Cookie, LocalStorage, кеші фреймворків.

Далі — O(n), класична лінійна складність, яку ви точно вже бачили і робите щодня в кожному циклі.

Уся серія · Наступна: O(n) — лінійна складність →


Вперше опубліковано в Telegram-каналі «Створений щоб помирати» 20.06.2025.