時間復雜度符號



五種符號:

\(Θ\),讀音:\(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)\)進行比較:

  1. 如果\(\lim\;\dfrac{f(n)}{g(n)}=0\),則稱\(f(n)\)在數量級上嚴格小於\(g(n)\),記為\(f(n)=ο(g(n))\)

  2. 如果\(\lim\;\dfrac{f(n)}{g(n)}=\infty\),則稱\(f(n)\)在數量級上嚴格大於\(g(n)\),記為\(f(n)=ω(g(n))\)

  3. 如果\(\lim\;\dfrac{f(n)}{g(n)}=c\),這里\(c\)為非\(0\)常數,則稱\(f(n)\)在數量級上等於\(g(n)\),即\(f(n)\)\(g(n)\)是同一個數量級的函數,記為\(f(n)=Θ(g(n))\)

  4. 如果\(f(n)\)在數量級上小於或等於\(g(n)\),則記為\(f(n)=O(g(n))\)

  5. 如果\(f(n)\)在數量級上大於或等於\(g(n)\),則記為\(f(n)=Ω(g(n))\)

\(O\)\(Ω\)都是存在\(c\),小\(o\)\(ω\)都是任意\(c\)



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM