如果我有两个函数并要求找到两者的渐近复杂度,那意味着什么?是O()还是Big Theta?例如 f1(n)= a ^ n和 F2(N)= N ^ 3 + N ^ 2
我应该说f1是O(a ^ n)而f2是O(n ^ 3)还是应该使用big-theta?
答案 0 :(得分:2)
O符号提供渐近上界;如果f(n)= O(g(n)),它直观地意味着f的增长速度不会快于g。
另一方面,Θ表示法指定紧束缚。如果f(n)=Θ(g(n)),则意味着f和g以相同的速率增长,直到某个常数因子。从技术上讲,f(n)=Θ(n)意味着f(n)= O(g(n)),尽管反过来并不总是正确。
您可以给出的最精确的分析是使用Θ表示法,尽管使用O表示法并没有错。
希望这有帮助!
答案 1 :(得分:1)
Big Oh和Big Theta都用于渐近分析。要说函数f(n)= O(n ^ 3)意味着它的增长速度不会快于n ^ 3。假设函数f(n)=Θ(n ^ 3)意味着它的增长速度与n ^ 3一样快。