2011-01-31 4 views
4

Is 2^(n+1) = O(2^n)?Is 2^(2n) = O (2^n)

Я считаю, что это верно, потому что n + 1 ~ = n.


2^(2n) = O(2^n)?

Кажется, что это будет использовать ту же логику, но я не уверен.

ответ

4

Обратите внимание, что

2n+1 = 2(2n)
и
22n = (2n)2

Оттуда, либо использовать правила Big-O нотации, которые вы знаете, или использовать определение.

+0

Итак, что такое Big-O для 2^2п? –

+0

@ DylanCzenski 2^2n = (2^2)^n = O (4^n) –

2

Чтобы ответить на эти вопросы, вы должны обратить внимание на определение нотации Big-O. Поэтому вы должны спросить:

есть ли постоянная C такая, что 2^(n+1) <= C(2^n) (при условии, что n достаточно большой)?

И то же самое относится к другому примеру: существует ли постоянная C такая, что 2^(2n) <= C(2^n) для всех n, достаточно большой?

Работайте над этими неравенствами, и вы будете на пути к решению.

4

Я предполагаю, что вы только что оставили нотацию O() с левой стороны.

O (2^(n + 1)) то же самое, что и O (2 * 2^n), и вы всегда можете вытащить постоянные коэффициенты, так что это то же самое, что и O (2^n).

Однако постоянные факторы - это единственное, что вы можете вытащить. 2^(2n) можно выразить как (2^n) (2^n), а 2^n не является константой. Итак, ответ на ваши вопросы - да и нет.

+0

'2^(n + 1) = O (2^n)' обычное, невероятно неудачное обозначение для высказывания * "Порядок из 2^(n + 1) - Big-O (2^n) "* Если бы у меня был свой путь, вместо этой ужасной записи O, Ω,, мы использовали бы один символ Θ в сочетании с ≤, ≥, и = указать порядок; вышеприведенный оператор затем будет записан как «Θ (2^(n + 1)) ≤ Θ (2^n)'. К сожалению, это просто не так, как это работает :( –

7

Первый случай, очевидно, верно - вы просто заберите постоянные

Текущие ответы на вторую часть вопроса, выглядит как handwaving ко мне, так что я постараюсь дать правильное математическое объяснение. Давайте предположим, что вторая часть верна, то из определения big-O, у вас есть:

enter image description here

что явно неправильно, потому что нет такой постоянной, удовлетворяющих такое неравенство.

2

претензии: 2^(2n) = O (2^п)

Доказательство от противного:

  1. Предположим: 2^(2n) = O (2^п)
  2. Это означает, что существует c> 0 и n_0 st 2^(2n) < = с * 2^п для всех п> = n_0
  3. Разделив обе части на 2^п, получим: 2^п < = с * 1
  4. Противоречие! 2^п не ограничена константой с.

Поэтому 2^(2n)! = O (2^п)

Смежные вопросы