Что такое нотация Big O в алгоритме

Python Junior Без компании
Что такое нотация Big O в алгоритме
Ответы
Big O — это математическая нотация, описывающая асимптотическую сложность алгоритма. Она показывает, как растёт время выполнения или потребление памяти при увеличении размера входных данных (n). **Основные виды сложности:** - **O(1)** – константная (доступ к элементу массива). - **O(log n)** – логарифмическая (бинарный поиск). - **O(n)** – линейная (поиск в неотсортированном массиве). - **O(n log n)** – линейно-логарифмическая (быстрая сортировка). - **O(n²)** – квадратичная (пузырьковая сортировка). **Пример:** ``` # O(n) – линейный поиск def linear_search(arr, target): for item in arr: if item == target: return True return False ``` Big O оценивает худший случай, игнорируя константы и меньшие члены (O(2n + 3) → O(n)).