Разве большой О х ^ 2 + х технически не больше, чем большой О х ^ 2? - PullRequest
1 голос
/ 01 августа 2011

Я знаю, что мы должны думать только о большем энергетическом члене, но для меньших значений x значение +x будет иметь значение, метинкс. При условии действительно больших значений x оно не будет.

Ответы [ 5 ]

5 голосов
/ 01 августа 2011

Big O - это предел бесконечности ... вам не нужны маленькие значения, поэтому вы можете игнорировать + x

4 голосов
/ 01 августа 2011

Big-Oh не о меньших значениях n.

Итак: Нет , это не больше.O (n ^ 2 + n) = O (n ^ 2)

2 голосов
/ 01 августа 2011

Смысл нотации big-O - говорить о поведении, когда n становится большим.Да, будет разница между n^2 + n и n для маленьких n, но для маленьких n нам не нужно беспокоиться о производительности.

O(n^2 + n) относится к ограничивающему поведению, которое «технически» ничем не отличается от O(n^2), поскольку предел при приближении n к бесконечности (n^2 + n)/n^2 равен 1 (что является константой, значение «один»'также не имеет значения.)

0 голосов
/ 01 августа 2011

Абсолютно нет.

Big-O описывает только порядок сложности и всегда содержит подразумеваемую константу пропорциональности. Значение этой константы на порядок важнее, чем члены более низкого порядка, даже для малых x.

0 голосов
/ 01 августа 2011

Если вы сравниваете два алгоритма и оба из них являются ^ ^ 2, то вам, возможно, придется взглянуть на следующие важные термины.Дело в том, что анализ big-O обычно позволяет определить, какой алгоритм лучше.Как правило, это делается только при условии наивысшего порядка.

...