演算法 最好 最壞 平均複雜度

2021-09-12 17:50:07 字數 894 閱讀 5897

注:本文僅為筆記。原文

極客時間 - 資料結構與演算法之美 - 04 | 複雜度分析(下):**最好、最壞、平均、均攤時間複雜度

略,比較容易分析。

需考慮概率來計算。

概率論中的加權平均值,也叫作期望值,所以平均時間複雜度的全稱應該叫加權平均時間複雜度或者期望時間複雜度

均攤時間複雜度及對應的攤還分析法。

對乙個資料結構進行一組連續操作中,大部分情況下時間複雜度都很低,只有個別情況下時間複雜度比較高,而且這些操作之間存在前後連貫的時序關係,這個時候,我們就可以將這一組操作放在一塊兒分析,看是否能將較高時間複雜度那次操作的耗時,平攤到其他那些時間複雜度比較低的操作上。而且,在能夠應用均攤時間複雜度分析的場合,一般均攤時間複雜度就等於最好情況時間複雜度。

// 全域性變數,大小為 10 的陣列 array,長度 len,下標 i。

int array = new int[10];

int len = 10;

int i = 0;

// 往陣列中新增乙個元素

void add(int element)

// new_array 複製給 array,array 現在大小就是 2 倍 len 了

array = new_array;

len = 2 * len;

}// 將 element 放到下標為 i 的位置,下標 i 加一

演算法 最好 最壞 平均複雜度

注 本文僅為筆記。原文 極客時間 資料結構與演算法之美 04 複雜度分析 下 最好 最壞 平均 均攤時間複雜度 略,比較容易分析。需考慮概率來計算。概率論中的加權平均值,也叫作期望值,所以平均時間複雜度的全稱應該叫加權平均時間複雜度或者期望時間複雜度。均攤時間複雜度及對應的攤還分析法。對乙個資料結構...

演算法複雜度分析 最好 最壞 平均 均攤

public int function int n,int x return sum 1.最壞時間複雜度當x n時,時間複雜度為o n 2.最壞時間複雜度 當x 1時,時間複雜度為o 1 3.平均時間複雜度 要查詢的變數 x 在陣列中的位置,有 n 1 種情況 在陣列的 0 n 1 位置中和不在陣列...

最好,最壞和平均時間複雜度

在查詢成功的情況下,若待查詢的資料元素恰好是陣列的第乙個元素,則只需比較一次即可找到,這就是最好情況,t n o 1 稱最好時間複雜度。若是最後乙個元素,則要比較n次才能找到。t n o n 稱最壞時間複雜度。在查詢不成功的情況下,無論何時進行不成功的查詢都需要進行n次比較,t n o n 成功查詢...