可以将f(n)上界的下界等于f(n)下界的上界

时间:2017-09-14 01:50:37

标签: algorithm big-o asymptotic-complexity

断言:

  

Ω(O(f(n)))= O(Ω(f(n)))

为了反驳,我只需要为函数f(n),

提供一个反例

所以让f(n)= n 假设

  

K1< = n< = K4;其中K1,K4,n> 0

因此:

  

O(n)= K4;其中K3 <= K4 <= K5,对于某些K3,K5> K5。 0

     

Ω(n)= K1;其中K0 <= K1 <= K2,对于某些K1,K2> K2。 0

现在,

  

O(K1)= K2

     

Ω(K4)= K3

我现在可以说,K2&lt; = K3因此断言被拒绝了?但是,如果平等的立场怎么办?

1 个答案:

答案 0 :(得分:0)

你的论点不正确,因为下面的部分;

  

K1&lt; = n&lt; = K4;其中K1,K4,n> 0

您不能使用数字K1K4来证明或拒绝这些关系,因为在asymptotic notations中,您应该使用function

您可以使用以下解决方案拒绝此关系:

f(n) = n

h(n) = O(f(n)) => h(n) <= f(n)

我假设(反例

h(n) = n

对于关系的右侧,我假设

f(n) = n

g(n) = Ω(f(n)) => f(n) <= g(n)

我假设(反例

g(n) = log n

通过在我们的第一个关系中替换这些函数;

Ω(O(f(n))) = O(Ω(f(n))) =>

Ω(h(n)) = O(g(n)) =>

Ω(n) = O(log n)

同样地,我们可以假设:

k(n) = Ω(n)

我假设(反例

k(n) = n

最后我们有:

Ω(n) = O(log n) =>

n = O(log n)

此结果(n = O(log n))不正确且第一关系不正确。