双重循环优化,提高运行效率

循环次数较少的时候for循环一般不会影响运行效率,但一旦循环次数较多,成千上万的时候,循环次数越多,效率就越慢,最近在做一程序的时候要解决优化问题,反复查看只有优化双重for循环才能提高效率。事实证明,优化后效率提升了一大半。 
当然,本文也有借鉴其他博友的方法,根据以下方法提升效率:

1、实例化变量放在for循环外,减少实例化的次数

2、把能在循环外计算的,尽量在循环外计算,减少在内层的运算,有判断条件的语句和与循环不相关的操作语句尽量放在for外面

3、应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨切循环层的次数

4、将普通变量变为寄存器变量

在程序运行时,根据需要到内存中相应的存储单元中调用,如果一个变量在程序中频繁使用,例如循环变量,那么,系统就必须多次访问内存中的该单元,影响程序的执行效率。因此,C\C++语言定义了一种变量,不是保存在内存上,而是直接存储在CPU中的寄存器中,这种变量称为寄存器变量。

 

 

1,for(int i = 0;i<arr.length;i++) 最耗时,

2,for(int i=0,len=list.size();i<len;i++) 次之,

3, for(int i = arr.length-1;i>=0;i--) 最快

说明:1,最耗时不需多言

     2与3 基本上差距在10%之内    

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值