什么意思吗?log O (1 ) n
我知道big-O表示法,但是这种表示法对我来说毫无意义。我也找不到任何东西,因为搜索引擎也无法正确解释。
在上下文中,我发现它的句子为“ [...],如果它使用空间并且最多使用则我们将其称为[efficiency]函数每件。”O (log n )log O (1 ) n
什么意思吗?log O (1 ) n
我知道big-O表示法,但是这种表示法对我来说毫无意义。我也找不到任何东西,因为搜索引擎也无法正确解释。
在上下文中,我发现它的句子为“ [...],如果它使用空间并且最多使用则我们将其称为[efficiency]函数每件。”O (log n )log O (1 ) n
Answers:
您需要暂时忽略强烈的感觉,即“ O ”位于错误的位置,并继续使用定义。 ˚F (Ñ )= 日志Ô (1 ) ñ意味着存在常数ķ和Ñ 0,使得对于所有Ñ ≥ Ñ 0,˚F (Ñ )≤ 日志ķ ⋅ 1 ñ = 登录ķ Ñ。
注意,log k n表示(log n )k。log O (1 ) n形式的函数通常称为多对数,您可能会听到人们说“ f是polylog n”。
你会发现,很容易证明,2 ñ = Ø (ñ ),自2 ñ ≤ ķ ñ所有ñ ≥ 0,其中ķ = 2。您可能想知道2 log n = log O (1 ) n。答案是肯定的,因为对于足够大ň,登录ñ ≥ 2,所以2 日志ñ ≤ 日志2 ñ的足够大的
在相关说明中,您经常会看到写为n O (1 )的多项式:相同的想法。
这是符号,它可以被普遍接受的进行感的滥用占位约定:无论何时你发现朗道长期Ô (˚F ),通过替换它(在你的心中,或在纸上)任意函数g ^ ∈ Ø (f )。
所以如果你发现
f (n )= log O (1 ) n
你要读
˚F (Ñ )= 日志克(Ñ ) ñ一些克∈ Ô (1 )。
注意从称差“ 登录到一些恒定的功率”:克= Ñ ↦ 1 / Ñ是一个明显的可能性。
警告:作者可使用甚至更多符号的滥用,想读
˚F (Ñ )∈ Ô (日志克(Ñ ) ñ )对于一些克∈ Ô (1 )。
注意(1)和(2)之间的区别;尽管可以在此处定义相同的一组正值函数,但这并不总是有效。请勿在表达式中随意移动O!
“至多log O (1 ) n ”表示存在一个常数c,因此被测量的值为O (log c n )。
在更一般的上下文中,˚F (Ñ )∈ 日志Ô (1 ) Ñ等同于存在(可能为负)的发言常数一个和b,使得˚F (Ñ )∈ Ô (登录一个 Ñ )和˚F (Ñ )∈ Ω (日志b ñ )。
很容易忽略Ω (log b n )的下限。在那种情况下很重要的情况下(如果您仅对研究渐进增长感兴趣,这将是非常罕见的),则您不应完全相信作者实际上是指下限,而必须依靠上下文确保。
符号的字面意思日志Ô (1 ) ñ是对家庭的功能做算术,导致家族的所有功能登录克(Ñ ) Ñ,其中克(Ñ )∈ Ô (1 )。这与将O (g (n ))乘以h (n )得出O (g (n )h (
由于下界的细节是大概在不熟悉的领域,这是值得一些反例。回想一下,任何克(Ñ )∈ Ô (1 )中是有界的大小 ; 有一个常数c,对于所有足够大的n,| g (n )| < c。
在查看渐近增长时,通常仅上限g (n )< c很重要,因为例如您已经知道该函数为正。但是,一般而言,您必须注意下界g (n )> − c。
这意味着,与更典型的big-oh表示法用法相反,功能下降得太快的函数可能无法记录在log O (1 ) n中;例如
1
一个有点不同的排序的一个反是- 1 ∉ 日志Ô (1 ) ñ。