时间频度:
记为T(n).是语句执行的次数。
int total=0;
for(i=0;i<100;i++){
total+=1;
}
比如这个代码T(n)=n+1=101
时间复杂度:
除去常数项,只拿时间频度的最高次数项并除去其系数
O(1)。 只有常数项。比如: S=(a+b)/2 就是这个。无论多少行代码,只要没有for循环等复杂结构,时间复杂度就是O(1)
O(N):比如一层for循环
O(N^2):2层for循环
O(N^3):3层for循环
对数阶:O(log2N)

线性对数阶:O(N log2N):将对数阶执行N次。
比如:for(i=0;i<n;i++){
while(i<n){
i=i*2;
}
}
指数阶:O(2^n)
时间复杂度大小排序: O(1)<O(log2N)<O(N)<O(N log2N)<O(N^2)<O(N^3)<O(N^K)<O(2^n)
浙公网安备 33010602011771号