“log *”是什么意思?

时间:2010-09-26 11:40:31

标签: big-o logarithm

我在一本关于数据结构的书中遇到了O(log* N)这个词。 log*是什么意思?我不能find it on Google和WolframAlpha doesn't understand it either

3 个答案:

答案 0 :(得分:26)

它被称为iterated logarithm function。这是一个非常缓慢增长的功能。例如:

  • lg*(2) = 1
  • lg*(4) = 2
  • lg*(16) = 3
  • lg*(65536) = 4
  • lg*(2^65536) = 5 /注意(2 ^ 65536)远大于可观察宇宙中的原子数/

或者在Big O的情况下,它几乎可以被视为恒定时间。

答案 1 :(得分:23)

它是迭代对数。有关许多不同时间复杂度的描述,请参阅here;有关迭代对数本身的更多详细信息,请参阅here

迭代对数是在结果变为1或更小之前必须应用对数的次数。

答案 2 :(得分:5)

log *(n) - " log Star n"被称为"迭代对数"

简单来说,你可以假设log *(n)= log(log(log(.....(log *(n))))

log *(n)非常强大。

示例:

1)Log *(n)= 5其中n =宇宙中的原子数

2)使用3种颜色的树着色可以在log *(n)中完成,而着色树2的颜色是足够的,但复杂性将是O(n)。

3)找到知道欧几里德最小生成树的一组点的Delaunay三角剖分:随机O(n log * n)时间。

我希望你能在WolframAlpha Check here

上可视化 Log *(n)