比较分段函数的增长

时间:2015-09-21 22:48:05

标签: algorithm time-complexity big-o big-theta

我正在通过CLRS来加强我的理论技能。它花了一些时间讨论如何比较两种不同的增长函数,但我想出了一个我无法解决的例子。

如果n为奇数,则g1(n)= n; n 2 如果n是偶数

如果n为奇数,则让g2(n)= n 2 ; n如果n是偶数

就长期增长而言,g1和g2如何相关?我想说g1 =θ(g2),但我不知道如何展示(证明)它。

1 个答案:

答案 0 :(得分:1)

很明显:

  • g1(n)和g2(n)都具有O的最紧密上限(n 2 ),因此它们都可以写为O(n 2功能)。

  • g1(n)和g2(n)都具有最紧密的O(n)下界,因此它们都可以写成Ω(n)。

函数g1(n)和g2(n)以这样的方式写入,即它们具有不同的上限和下限。这意味着没有函数g(n):

  1. 要么c11*g(n) < g1(n) < c12*g(n)成立;
  2. 或,c21*g(n) < g2(n) < c22*g(n)成立。
  3. 因为对于n的任何函数,g1(n)和g2(n)都不能表示为θ(g(n)),因此 g1(n)不能是θ(g2(n))反之亦然