大O还是大theta?

时间:2015-10-22 14:57:01

标签: algorithm big-o complexity-theory asymptotic-complexity big-theta

假设我们有一个函数f(n)= log n而另一个函数g(n)= log n ^ 2。问题是f(n)= O(g(n))或f(n)= big_Theta(g(n))。由于log n ^ 2 = 2 log n然后另一种提出问题的方法是我们可以使用一个分数作为常数k吗?对于big_Theta选项,我的下限为k1 = 1/4,上限为k2 = 1。这没关系吗?

显然,k不能为零或负数,但我不确定分数,我在网上或我看过的书中没有看到明确的答案。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

f(n)=Θ(g(n))和f(n)=Θ(g(n))。另请注意,同时f(n)= O(g(n))是正确的。直觉上大哦意味着f被g(n)限制在上面(即它的增长不快于g)。另一方面,大θ意味着f在g的上方和下方都有界(即,它的生长速度与g一样快)。请注意,最后两个句子并不是绝对精确的,目的是为了更容易理解,并专注于这个而不是理论的直观含义。