用“渐近记号”来表示“渐近复杂度”。
1. 渐近记号包括:
(1)Θ(西塔):紧确界。 相当于"="
(2)O (大欧):上界。 相当于"<="
(3)o(小欧):非紧的上界。 相当于"<"
(4)Ω(大欧米伽):下界。 相当于">="
(5)ω(小欧米伽):非紧的下界。 相当于">"
给出这些记号的定义:
注解:渐近非负的意思是“当n趋于无穷大时,f(n)和g(n)都非负”。
2. 用集合论来表示这5个符号的关系:
从上面的图可以看出:
(1)如果f(n)=Θ(g(n)),则f(n)=O(g(n))且f(n)=Ω(g(n))。
(2)如果f(n)= o (g(n)),则f(n)=O(g(n))。
(3)如果f(n)=ω(g(n)),则f(n)=Ω(g(n))。
因此对于这些渐近记号的使用最准确应该是“f(n)∈ O (g(n))”,但是一般都是写成“f(n)=O(g(n))”。
给出一些例子:
O(n^2)可以是n,2n,1,2n^2等。
Θ(n^2)可以是n^2,3n^2等。
ω(n^2)可以是n^3,n^10等,但不能是n^2。
Ω(n^2)可以是n^2,n^3,n^10等。
o(n^2)可以是n,1,3n