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

阿里 阅读:609 2021-08-26 14:18:58 评论:0
本文章主要介绍了双重循环优化,提高运行效率,具有不错的的参考价值,希望对您有所帮助,如解说有误或未考虑完全的地方,请您留言指出,谢谢!

循环次数较少的时候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%之内    

标签:C++
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

我的关注

全民解析

搜索
关注我们