漸近表示法
漸近表示法
漸近表示法用於表示演算法複雜度以進行漸近分析。這些表示法是用於表示複雜度的數學工具。通常使用三種表示法。
大 O 表示法
大 O(O)表示法為函式 f(n) 提供了一個上界,精確到常數因子。
如果存在正數常數 n0 和 c,使得在 n0 的右側 f(n) 始終位於 c*g(n) 上方或下方,我們寫 f(n) = O(g(n))。
O(g(n)) = { f(n) : 存在正數常數 c 和 n0,使得對於所有 n ≥ n0,0 ≤ f(n) ≤ c g(n)}
大 Ω 表示法
大 Ω(Ω)表示法為函式 f(n) 提供了一個下界,精確到常數因子。
如果存在正數常數 n0 和 c,使得在 n0 的右側 f(n) 始終位於 c*g(n) 上方或下方,我們寫 f(n) = Ω(g(n))。
Ω(g(n)) = { f(n) : 存在正數常數 c 和 n0,使得對於所有 n ≥ n0,0 ≤ c g(n) ≤ f(n)}
大 Θ 表示法
大 O(Θ)符號用於在常量範圍給出一個函式 f(n) 的界。
如果存在正整數 n0 以及常數 c1 和 c2,使得 n0 右邊的 f(n) 始終在 c1*g(n) 和 c2*g(m) 之間(含邊界),則我們寫 f(n) = Θ(g(n))。
Θ(g(n)) = {f(n) : 存在正整數 c1、c2 和 n0,使得對於所有 n ≥ n0,均有 0 ≤ c1 g(n) ≤ f(n) ≤ c2 g(n)}
廣告