1. 程式人生 > >演算法複雜度分析中的符號(Θ、Ο、ο、Ω、ω)簡介

演算法複雜度分析中的符號(Θ、Ο、ο、Ω、ω)簡介

Θ,讀音:theta、西塔;既是上界也是下界(tight),等於的意思。

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