Макс и мин функций в порядке записи - PullRequest
0 голосов
/ 18 января 2012

Вопрос о нотации заказа, биг-о нотация и т. П .:

Что означают максимум и минимум функции с точки зрения обозначения порядка?

например:

Определение:

«Максимальные» правила: предположим, что f (n) и g (n) являются положительными функциями для всех n> n 0 .

Тогда:

  • O [f (n) + g (n)] = O [max (f (n), g (n))]

  • и т.д ...

Мне нужно использовать эти определения, чтобы доказать что-то для домашней работы .. спасибо за помощь!

РЕДАКТИРОВАТЬ: f (n) и g (n) должны представлять время выполнения алгоритмов с учетом размера ввода

Ответы [ 2 ]

3 голосов
/ 18 января 2012

В обозначении Big-O вы говорите о верхних границах вычислений.Это означает, что вас интересует только наибольший член объединенной функции, поскольку n (переменная) стремится к бесконечности.Более того, вы также отбрасываете любые постоянные множители, поскольку формальное определение записи позволяет отбрасывать эти части, что важно, поскольку позволяет сосредоточиться на поведении алгоритма, а не на его реализации.

Итак, мы объединяем две функции суммированием.Ну, есть два случая (строго три, но это симметрично):

  1. Одна функция имеет более высокий порядок, чем другая.В этот момент функция высшего порядка доминирует над меньшей;Вы можете притворяться, что меньшее не существует.
  2. Обе функции имеют один и тот же порядок.Это так же, как вы делаете некоторую пропорциональную сумму двух (поскольку мы уже отбросили коэффициенты масштабирования), но затем вы просто получаете тот же коэффициент и просто немного изменили коэффициенты масштабирования.

Чистый результат очень похож на функцию max (), хотя на самом деле это не так (на самом деле это обобщение max в пространстве функций), поэтому очень удобно использовать обозначения.

3 голосов
/ 18 января 2012

Это обычный максимум между натуральными числами. f - это функция, сопоставленная с числами [f:N->N], как и g.

Таким образом, f(n) находится в N, и поэтому max(f(n),g(n)) является просто стандартным максимумом: f(n) > g(n) ? f(n) : g(n)

O[max (f(n),g(n)) ] означает: что всегда «дороже»: f или g: это верхняя граница.

...