Вопрос

Мне нужно получить сложность Big-o этого выражения:

C ^ n + n * (log (n)) ^ 2 + (10 * n) ^ c

где C представляет собой постоянную, и N является переменной.
Я уверен, что я понимаю, как получить сложность Big-o каждого срока индивидуально, я просто не знаю, как изменяется сложность Big-O, когда условия объединяются так.
Идеи?

Любая помощь была бы великой, спасибо.

Это было полезно?

Решение

Организация O () рассматривает самый высокий термин; подумайте о том, какой из них будет доминировать для очень, очень больших ценностей n.

В вашем случае самый высокий термин c^n, фактически; Другие по существу являются полиномиальными. Итак, это экспоненциальная сложность.

Другие советы

Ответ зависит от | C |

Если | C | <= 1 Это O (n * (log (n)) ^ 2)

Если | C | > 1 Это O (c ^ n)

Википедия - твой друг:

В типичном использовании формальное определение нотации o не используется напрямую; Скорее, нотация o для функции f (x) получена следующими правилами упрощения:

  • Если f (x) является суммой нескольких терминов, удерживается тем, что с наибольшим количеством роста хранится, и все остальные опущены.
  • Если f (x) является продуктом нескольких факторов, любых констант (термины в продукте, которые не зависят от X), опущены.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top