我是初学者,正在学习在线算法课程,当我读一本书时,发现了以下问题。
鉴于f(x)= 2x ^ 2 + 5x +3且g(x)= 2x ^ 3 + x -100,证明f(x)= O(g(x))
Let c = 4 and x = 5,
2x^2 + 5x +3 <= c(2x^3 +x -100)
I tried to solve the left side as follows.
if x >=1, then x <=x^3, 5x <= 5x^3 ...
2x^2 + 5x +3 => 2x^3 + 5x^3 +3x^3
=> 10x^3
我的问题是我可以忽略g(x)的-100并将其与10x ^ 3的c值进行比较吗?
以下算法的运行时间是否为O(n(logn))是否正确?
int foo(int n){
int i,j,k=0;
for(i = n/2; i <= n; i++){
for(j = 2; j<= n; j = j * 2){
k += n/2;
}
}
return k;
}
谢谢您的解释。