Встречается на собеседованиях • сегодня
Какие типы алгоритмической сложности знаешь
Временная сложность алгоритмов описывает, как растёт время выполнения с увеличением размера входных данных. Основные типы:
- O(1) – константная сложность (доступ к элементу массива)
python
def get_first(arr):
return arr[0] # Всегда один шаг- O(log n) – логарифмическая (бинарный поиск)
python
def binary_search(arr, x):
low, high = 0, len(arr)-1
while low <= high:
mid = (low + high) // 2
if arr[mid] < x:
low = mid + 1
else:
high = mid - 1- O(n) – линейная (поиск в неотсортированном массиве)
python
def linear_search(arr, x):
for item in arr:
if item == x:
return True-
O(n log n) – линейно-логарифмическая (быстрая сортировка)
-
O(n²) – квадратичная (пузырьковая сортировка)
python
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]-
O(2ⁿ) – экспоненциальная (рекурсивные вычисления Фибоначчи)
-
O(n!) – факториальная (перебор всех перестановок)
Также существуют пространственные сложности, описывающие использование памяти.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы