Используется для оценки алгоритмов. Оценивается не то сколько алгоритм работает на конкретных данных, а то сколько алгоритм работает в зависимости от размера входа (объема данных).
T(n) - сколько времени работает алгоритм на входе какого-то размера n.
Нужно посчитать количество действий которые выполняет программа, колисество read/write операций.
Имеет следующие правила:
Базовыми операциями, которыми можно вычислять скорость - это опреации read, write.
O(n) - обозначает такую скорость которая при увеличении размера входных данных начиная с какого то момента будет ниже, чем график функции, которая ее определяет - оценка сверху. (условно худшая скорость)
Ω(n) - оценка снизу - обозначает такую скорость которая при увеличении размера входных данных начиная с какого то момента будет выше, чем график функции, которая ее определяет - оценка снизу.
Θ(n) - если одновременно выполняются условия O(n) и Ω(n)