通过感应证明多项式Big-Theta?

时间:2012-09-19 16:07:09

标签: algorithm big-o big-theta induction

我理解大theta,大哦和大欧米茄的概念......我只是很难证明它。自从我完成归纳以来已经有很长一段时间了,所以我很确定我只是生锈而且缺少一些简单的东西。

例如..我需要帮助的问题是显示5n² - 6n = Θ(n²)

我已经得到问题的大哦部分(我做大哦和Ω单独纠正?)到:

6k² >= 5n² - 6n

和omega的大部分:

5n² - 6n >= n²

....但我从哪里开始?!我从归纳中回忆起......我认为这些都是真的,现在为每个(n+1)插入n并且......做某事?我此时已经迷失了自己。

1 个答案:

答案 0 :(得分:1)

要显示5n ^ 2-6n是O(n ^ 2),你必须证明这个陈述 5n ^ 2-6n< = cn ^ 2对于所有数字n> = n0,对于某些数字n0和常数c。

通过归纳证明涉及证明对基本案例的主张并证明归纳步骤。在我们的例子中,我们可以看到基本情况,当n = 1时,对于某些常数c显然是正确的。

对于归纳步​​骤,我们假设某些数字k的声明是正确的,并使用它来表明声明对于k + 1是正确的。所以我们假设5k ^ 2-6k< = ck ^ 2并显示:

5(k+1)^2 - 6(k+1)  = 5k^2 +10k + 5 -6k - 6
                   = 5k^2-6k + 10k -1        
                  <= ck^2 + 10k - 1
                  <= ck^2 + c*2k + c       (for any constant c  >= 5)
                   = c(k+1)^2

这证明了对k + 1的要求并完成了证明。

你可以用类似的方式证明欧米茄的主张。