8^log2(n) 的大 O 表示法

Big-O notation of 8^log2(n)

我对 8^(log2(n)) 的大 O 表示法感到困惑。

您能否将其更改为 O(8^n),因为 log2 会在某种程度上充当常数,只会减少 n 的值?还是别的东西?

在有点类似的情况下,log2(n^n) 的大 O 是什么。这只是 O(log2(n)) 吗?

8^(log(n)) 的大 O 将 O(2^log(n))8 = 2^3

还有log(n^n) = n*log(n)。所以 big-O for log2(n^n) 会是 O(n*log2(n))

我们需要以下对数和指数的属性来理解这一点:

  1. bLogb(x) = x

  2. k . Logb(x) = Logb(xk)

  3. (xa)b = xa.b


第一个问题:

8Log2(n)

= (23)Log2(n) (because 8 = 23)

= 23 . Log2(n) (using Prop#3)

= 2Log2(n3) (using Prop#2)

= n3 (using Prop#1)

= O(n3)


对于第二个问题:

Log2(nn)

= n . Log2(n) (using Prop#2)

= O(n Log(n))