O(logn)= O(2 ^ O(log logn))?
我试图记录双方的日志 log logn = log2 ^(log logn) log logn = log logn log2
我们可以找到常数C> log2 s.t C log logn> log logn log2
所以他们彼此相等。我是对的吗?
答案 0 :(得分:1)
我想你想问的是log n = O(2^(log log n))
?
将O
(big-O)视为<=
运算符,但比较是渐近的。
现在,要回答您的问题,我们必须比较log n
和2^(log log n)
。
只有当我们需要可视化算法在输入大幅增长时会缩放多少时,我们才使用渐近符号。
log n
是一个对数函数。
2^(log log n)
是一个指数函数。 (请注意log log n
是2
)的指数
对数函数渐近地小于指数函数总是如此。如果你想理解,尝试计算非常大的n值的函数(如10000或100000000)。
因此,可以很容易地推断出log n = O(2^(log log n))
。
注意:我们不会像你问的那样比较渐近符号(O(logn) = O(2^O(log logn))
)。我们使用这些符号比较函数(如log n
)。