3.1-1 假設f(n)與g(n)都是漸進非負函數。使用θ記號的基本定義來證明max(f(n),g(n))=θ(f(n)+g(n))。
解:
3.1-2 證明:對任意實常量a和b,其中b>0,有
解:
3.1-3 解釋爲什麼“算法A的運行時間至少是O(n2) ”這一表述是無意義的。
O:表示一個函數的漸進上界。
既然是上界,用“至少來形容”,就不恰當了吧。
3.1-4 2n+1=O(2n)成立嗎?22n=O(2n)成立嗎?
O:表示一個函數的漸進上界。
1)證明,
所以,成立。
2)證明,
所以,不成立。
3.1-5 證明定理3.1
定理3.1:對於任意兩個函數f(n)和g(n),我們有f(n)=θ(g(n)),當且僅當f(n)=O(g(n))且f(n)=Ω(g(n))
3.1-6 證明:一個算法的運行時間爲θ(g(n))當且僅當其最壞情況運行時間爲O(g(n)),且其最好情況運行時間爲Ω(g(n))
同上
3.1-7 證明:o(g(n))⋂w(g(n)) 爲空集
因爲這兩個是緊確上界和下界。
3.1-8 可以擴展我們的記號到有兩個參數n和m的情形,其中的n和m可以按不同速率獨立地趨於無窮。對於給定的函數g(n,m),用O(g(n,m))來表示一下函數集:
定義如下: