描述
近似函式
調和級數求和
hn=1+1/2+1/3+1/4+······+1/n~lnn
等差數列求和
1+2+3+4+······+n~n²/2
等比數列求和
1+2+4+8+······+2ⁿ~2ⁿ
斯特靈公式
lgn!=lg1+lg2+lg3+lg4+······+lgn~nlgn
描述增長的數量級
典型**
說明舉例
常數級別
1a=b+c
完成任務所需的運算元一定
將兩個數相加
對數級別
logn
二分查詢
底數和增長的數量級無關,僅比常數級別慢
二分查詢
線性級別n迴圈
一般基於單個for迴圈
迴圈線性對數級別
nlogn
分治、快排
分治和快排
歸併排序
平方級別
n²雙層迴圈
一般含有雙層迴圈
雙層迴圈
立方級別
n³三層迴圈
一般含有三層迴圈
三層迴圈
指數級別
2ⁿ窮舉查詢
不適合解決大規模問題
檢查所有子集
演算法分析(1) 增長數量級分類總結
3 綜述 實現演算法一般使用以下幾種結構性原語 常數級別 對數級別 線性級別 線性對數級別 平方級別 立方級別 指數級別 常見的增長數量級是基礎,與之對應的演算法在演算法分析設計中往往是基礎性的數學模型,讀者可以收藏一下下 感激!常見數量級 與之對應的模型及演算法 常數級別 普通語句,例如普通的加減...
微積分學和演算法分析中的O, o
微積分中有無窮小和有界的概念,對應的符號分別為 o o o role presentation oo。類似的,在演算法分析中也有漸近上 下界 非緊上 下界和緊漸近界的概念,對應的符號分別為o o o o 和 既然前兩個符號相同,那麼這些符號有什麼聯絡呢?根據微積分學中的定義,有界符號 o o 定義為...
資料結構和演算法中的複雜度分析
了解複雜度分析,資料結構和演算法中複雜度分為時間複雜度和空間複雜度,我們用大o表示法,時間複雜度分析用三種方法分析 1 只關注迴圈執行次數最多的一段 以下 複雜度為o n private int cal int n return sum 2.加法法則 總複雜度等於量級最大的那段 的複雜度,以下 複雜...