关于时间复杂度,大O符号

时间:2016-01-30 14:04:17

标签: big-o time-complexity

假设n1,n2> ķ。

 O(k(n1+n2-k)) = O(k(max(n1,n2)) ?

另外,

 O(n1+n2) = O(max(n1,n2)) ?

由于

1 个答案:

答案 0 :(得分:3)

  

索赔O(k(n1 + n2-k))= O(k(max(n1,n2))是否为真?

我们知道k < min{n1,n2} - 因此:

k(n1+n2-k) = k(max{n1,n2} + min{n1,n2} -k) > k(max{n1,n2})

因此,显示O(k(max(n1,n2))O(k(n1+n2-k))

的子集非常简单

我们还需要反过来展示,这也很简单,因为2k*max{n1,n2}位于O(k(max(n1,n2))

k(n1+n2-k) < k(max{n1,n2} + max{n1,n2}) -k) < 
           < k(max{n1,n2} + max{n1,n2}))
           = 2 k*max{n1,n2}

所以,声明是正确的。

  

O(n1 + n2)= O(max(n1,n2))?

这是对的。自max{n1,n2} <= n1+n2 <= 2*max{n1,n2}以来,我们在分析大O表示法时并不关心常量。