多重循环的优化
来源:互联网 发布:java中@test的作用 编辑:程序博客网 时间:2024/04/30 07:34
代码1 for(int i=0;i<1000;i++){ for(int j=0;j<100;j++){ for(int k=0;k<10;k++){ function(i,j,k); } } }
代码2for(int k=0;k<10;k++){ for(int j=0;j<100;j++){ for(int i=0;i<1000;i++){ function(i,j,k); } } }
代码1和代码2,初一看,function都要执行10*100*1000次,效率是一样的。
但是事实上代码2的效率更高。
因为在大量的循环次数时,循环变量的比较次数也是很重要的。
代码1的循环变量的比较次数是
i=1000次
j=1000*100次
k=1000*100*10次
代码2的循环变量的比较次数是
k=10次
j=10*100次
i=10*100*1000次
所以代码2的比较次数比代码1的比较次数少了99990次!
同样的,代码2的i++,j++,k++的执行次数比代码1的要少。
- 多重循环的优化
- Java中多重循环的优化问题
- 代码优化:多重循环
- 多重循环优化
- 多重循环优化
- 多重背包的优化
- 跳出多重循环的方法
- 开发中遇到多种组合的多重循环优化递归算法
- 有关对耗时很大循环进行并行化优化的探讨之二:多重循环任务的并发处理
- 多重背包的二进制优化
- 多重背包的二进制优化
- 多重背包的二进制优化
- 多重背包的二进制优化
- 多重循环
- 多重循环
- 多重循环
- 多重循环下的continue的使用
- iBatis 的多重循环牵套
- 面试宝典 问题记录
- 重拾数据结构:冒泡排序
- 安卓:View的基本信息
- POJ刷题指南
- oracle分析函数Rank, Dense_rank, row_number
- 多重循环的优化
- 父进程等待子进程终止 wait, WIFEXITED, WEXITSTATUS
- 判断是否为二分图
- Oracle 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数,其他函数)
- 以矩阵乘法为例,了解cpu cache对程序性能的影响
- 洪水预报系统的读书笔记
- PowerDesigner 物理数据模型(PDM) 说明
- D3D9 HOOK [透视原理]
- (三):初步寻找区分病人的最佳高频/低频阈值