时间复杂度 BigO

2020-12-21  本文已影响0人  东南枝下

时间复杂度 BigO

[大O表示法] 算法的渐进时间复杂度

T(n) = O(f(n))

T(n) -- 时间的渐进复杂度

f(n) -- 代码执行的次数

O -- 正比例关系

例 1:

for(int i=0; i<n;i++){

x++;

}
int i=0 -- 执行 1 次
i<n -- 执行n次
i++ ---执行n次
x++ --- 执行n次
共计 1+3n 次

BigO 是计算n接近于无限大的情况下的比例

所以 : O(1+3N)=O(N)

例 2 :

for(int i=0; i<n; i++){

for(int j=0; j<n; j++){

x++;

}
}

复杂度:O(n^2)

例 3 :

for(int i=0; i<n;i++){
x++;
}

for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
x++;
}
}

n接近于无限大的情况下:
O(n+n^2) = O(n^2)
上一篇 下一篇

猜你喜欢

热点阅读