用“渐近记号”来表示“渐近复杂度”。
渐近记号包括:
(1)Θ(西塔):渐进紧确界。 相当于"="
(2)O(大欧):渐进紧确上界。 相当于"<="
(3)o(小欧):非渐进紧确上界。 相当于"<"
(4)Ω(大欧米伽):渐进紧确下界。 相当于">="
(5)ω(小欧米伽):非渐进紧确下界。 相当于">"
Θ(西塔):
Θ(g(n))={f(n):存在正常数c1,c2,和n0,使得对所有n≥n0,有0≤c1g(n)≤f(n)≤c2g(n)},对任意一个函数f(n),若存在正常数c1,c2,使当n充分大时,f(n)能被夹在c1g(n)和c2g(n)之间,则f(n)属于集合Θ(g(n))。因为Θ(g(n))是一个集合,可以写成“f(n)∈Θ(g(n))”,表示f(n)是Θ(g(n))的元素。
O(大欧):
Θ记号渐进地给出一个函数的上界和下界。当只有渐进上界时,使用O记号。对一个函数g(n),用O(g(n))表示一个函数集合O(g(n))={f(n):存在正常数c和n0,使得对所有n≥n0,有0≤f(n)≤cg(n)},读作g(n)的大O。O记号在一个常数因子范围内给出某函数的一个上界。对于所有n0右边的n值,f(n)的值都在cg(n)以下。
Ω(大欧米伽):
正如O记号给出一个函数的渐进上界,Ω记号给出一个函数的渐进下界。Ω(g(n))={f(n):存在正常数c和n0,使得对所有n≥n0,有0≤cg(n)≤f(n)},读作g(n)的大Ω。
o(小欧):
ω(小欧米伽):
O(n2)可以是n,2n,1,2n2等。
Θ(n2)可以是n2,3n2等。
ω(n2)可以是n3,n10等,但不能是n2。
Ω(n2)可以是n2,n3,n10等。
o(n2)可以是n,1,3n等,但不能是n2。