大喔与log(n)和指数

时间:2013-08-18 18:57:52

标签: math big-o

所以我有一些给定的功能,需要为他们喜欢Big Oh(我做过)。

  1. n log(n)= O(n log(n))
  2. n ^ 2 = O(n ^ 2)
  3. n log(n ^ 2)= O(n log(n))
  4. n log(n)^ 2 = O(n ^ 3)
  5. n = O(n)
  6. log是自然对数。

    我很确定1,2,5是正确的。 对于3我在这里找到了一个解决方案:n log(n ^ 2)= 2 n log(n)=> O(n log n) 但我完全不确定4)。 n ^ 3肯定比n * log(n ^ 2)大,但是它的哦呢?我的另一个猜测是O(n ^ 2)。

    其他一些事情:

    • n ^ 2 * log(n)
    • n ^ 2 * log(n)^ 2 那会是什么?

    如果有人可以解释,如果它是错误的话会很棒。谢谢!

1 个答案:

答案 0 :(得分:2)

请记住,big-O在函数上提供渐近上限,因此任何O(n)函数也是O(n log n),O(n 2 < / sup>),O(n!)等。由于log n = O(n),我们有n log 2 n = O(n 3 )。同样,n log 2 n = O(n log 2 n)和n log 2 n = O(n 2 )。实际上,对于任何ε> 1,n log 2 n = O(n 1 +ε)。 0,因为log k n = O(n ε)对于任何ε> 0。 0

函数n 2 log n和n 2 log 2 n不能简化为其他一些函数的方式能够。形式为O(n k log r n)的运行时并非罕见。事实上,有许多算法具有运行时O(n 2 log n)和O(n 2 log 2 n),这些运行时通常是这样的。例如,Karger-Stein算法的每次迭代都需要时间O(n 2 log n),因为此运行时来自应用于重现的主定理

  

T(n)= 2T(n/√2)+ O(n 2

希望这有帮助!