时间复杂度与空间复杂度

时间复杂度:代码随数据规模增长的变化趋势
分析时间复杂度的方法:
1.只关注循环执行次数最多的一段代码
2.加法法则:总复杂度等于量级最大的那段代码的复杂度
3.乘法法则:嵌套代码的复杂度等于嵌套内外代码复杂度的乘积


空间复杂度:表示算法的存储空间和数据规模之间的关系

思考题:

function total(n){
var sum = 0;
for(var i=1;i<=n;i++){
sum+=i;
}
return sum;
}

 

该求和算法的时间复杂度为T(n)=O(n);空间复杂度S(n) = O(1);

优化为时间复杂度为T(n)=O(1);
高斯算法闪亮登场:

function total(n){
var sum = n*(n+1)/2
return sum;
}

 

posted @ 2019-01-09 15:29  艾森MAO  阅读(115)  评论(0编辑  收藏  举报