在此我提出此问题之前,我发现此网站是提出此问题的合适网站from here
我有2个算法说A和B同样的问题。
A is complexity is = 5nlogn
B is complexity is = n sqrt(n)
我想找到n0的值,这样我才能证明A比B好。
我尝试了以下内容:
5nlogn/nsqrt(n) = 5logn / sqrt(n)
by putting
n = 512 ==> i got the answer. But i am not sure whether it is correct?
我该怎么做?
要明确:我想证明以下内容
A = BigO(B)
答案 0 :(得分:2)
不完全是。
您正在寻找
5nlog(n) < nsqrt(n)
5nlog(n) / nsqrt(n) < 1
5log(n) / sqrt(n) < 1
从wolfram alpha开始,这对所有n > ~3500
作为旁注,如果您想在5nlog(n)
中显示O(nsqrt(n))
,则可以调整常量,并添加常量C:
5nlog(n) < C*nsqrt(n) for all n > n0
选择C=10
时,上述内容适用于所有n>0