复杂度O(sqrt(n)* log(sqrt(n)))+ O(n)的大O是多少?

时间:2013-11-26 05:03:45

标签: algorithm big-o time-complexity

上述复杂性的大O符号是什么?

是O(n)

3 个答案:

答案 0 :(得分:9)

是。关键是日志中的平方根没有区别:

O(sqrt(n) log(sqrt(n))) = O(sqrt(n) 1/2 log(n)) = O(sqrt(n) log(n)).  

有了这个,我们注意到

O(n) = O(sqrt(n)sqrt(n)) > O(sqrt(n)log(n)).  

这是因为无论如何

O(sqrt(n)) > O(log(n)).  

为什么呢?我们可以在两侧进行日志验证,并在日志中再次显示一个平方根:

O(log(sqrt(n)) = O(1/2 log(n)) = O(log(n)) > O(log log(n))

因此我们最终可以得出结论,总体结果是O(n)。

答案 1 :(得分:3)

O(n)淹没O(sqrt(n))和O(log(sqrt(n))

答案 2 :(得分:0)

O(sqrt(n)* log(sqrt(n)))+ O(n)< = O(sqrt(n)* sqrt(n))+ O(n)

O( sqrt(n)* sqrt(n))+ O(n)= O( n )+ O(n)

O(n)+ O(n)= O(n)