~~對規模爲n的問題,算法的運行時間增長情況
所以有:O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n) < O(n!)
漸進意義下的記號:O(≤)、Ω(≥)、Θ(=)、o(<)
① 大O記法:若存在一個自然數n0 和一個常數c>0,使得
,
則稱f( n )爲O( g(n) )的。 // f 沒有g的某個常數倍增長的快。(上界)
② Ω記法:若存在一個自然數n0 和一個常數c>0,使得
,
則稱f( n )爲Ω( g(n) )的。 // f 的增長至少和g的某個常數倍一樣快。(下界)
③ Θ記法:若存在一個自然數n0 和兩個常數c1、c2>0,使得
,
則稱f( n )爲Θ( g(n) )的。 //Θ給出算法運行時間增長率的一個精確描述。
④ o記法:若存在一個自然數n0 和一個常數c>0,使得
,
則稱f( n )爲o( g(n) )的。 //當n充分大時,f對於g可以忽略不記。