Вопрос проверяет ваше понимание основ асимптотической алгебры, или big-oh обозначений.В
f(x) = O(g(x))
при приближении x
к бесконечности
вопрос говорит о том, что при подаче функции f
значение x
, значение которого f
вычисляет из x
, затем в порядке того, что возвращено из другой функции, g(x)
.В качестве примера, предположим, что
f(x) = 2x
g(x) = x
, тогда значение g(x)
возвращается при подаче x
того же порядка, что и f(x)
для x
.В частности, две функции возвращают значение в порядке x
;обе функции линейные .Неважно, является ли f(x)
2x
или ½x
;для любого постоянного фактора вообще f(x)
вернет значение, которое имеет порядок x
.Это потому, что нотация big-oh означает игнорирование постоянных факторов.Постоянные факторы не растут по мере роста x
, поэтому мы предполагаем, что они не так важны, как x
.
Мы ограничиваем g(x)
определенным набором функций.g(x)
может быть x
, или ln(x)
, или log(x)
и и т. Д. и и т. Д. .Это может выглядеть так, как если бы
f(x) = 2x
g(x) = x
f(x)
давало значения выше g(x)
и, следовательно, является верхней границей g(x)
.Но еще раз, мы игнорируем постоянный коэффициент и говорим, что верхний предел порядка из , который и есть большой смысл, равен g(x)
.