五種符號:
\(Θ\),讀音:\(theta\)、西塔;既是上界也是下界(\(tight\)),等於的意思。
\(O\),讀音:\(big-oh\)、歐米可榮(大寫);表示上界(\(tightness\;unknown\)),小於等於的意思。
\(ο\),讀音:\(small-oh\)、歐米可榮(小寫);表示上界(\(not\;tight\)),小於的意思。
\(Ω\),讀音:\(big\;omega\)、歐米伽(大寫);表示下界(\(tightness\;unknown\)),大於等於的意思。
\(ω\),讀音:\(small\;omega\)、歐米伽(小寫);表示下界(\(not\;tight\)),大於的意思。
解釋:
大\(O\)符號(英語:\(Big\;O\;notation\))是用於描述函數漸近行為的數學符號。更確切地說,它是用另一個(通常更簡單的)函數來描述一個函數數量級的漸近上界。
大\(Ω\)符號的定義與大\(O\)符號的定義類似,但主要區別是,大\(O\)符號表示函數在增長到一定程度時總小於一個特定函數的常數倍,大\(Ω\)符號則表示總大於,來描述一個函數數量級的漸近下界。
大\(Θ\)符號是大\(O\)符號和大\(Ω\)符號的結合。下面給出具體的數學定義:
函數\(f(n)\)代表某一算法在輸入大小為\(n\)的情況下的工作量(效率),則在\(n\)趨向很大的時候,我們將\(f(n)\)與另一行為已知的函數\(g(n)\)進行比較:
-
如果\(\lim\;\dfrac{f(n)}{g(n)}=0\),則稱\(f(n)\)在數量級上嚴格小於\(g(n)\),記為\(f(n)=ο(g(n))\)
-
如果\(\lim\;\dfrac{f(n)}{g(n)}=\infty\),則稱\(f(n)\)在數量級上嚴格大於\(g(n)\),記為\(f(n)=ω(g(n))\)
-
如果\(\lim\;\dfrac{f(n)}{g(n)}=c\),這里\(c\)為非\(0\)常數,則稱\(f(n)\)在數量級上等於\(g(n)\),即\(f(n)\)和\(g(n)\)是同一個數量級的函數,記為\(f(n)=Θ(g(n))\)
-
如果\(f(n)\)在數量級上小於或等於\(g(n)\),則記為\(f(n)=O(g(n))\)
-
如果\(f(n)\)在數量級上大於或等於\(g(n)\),則記為\(f(n)=Ω(g(n))\)
大\(O\)大\(Ω\)都是存在\(c\),小\(o\)小\(ω\)都是任意\(c\)

