关于双重循环
来源:互联网 发布:echart java 导出图片 编辑:程序博客网 时间:2024/06/02 14:54
曾经一直认为是n * m 的循环,如果n < m,那么n应该放在外面的循环。因为
for(int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
}
}
这个需要做的次数是n*m + n
而m在外层的运算需要做n*m + m,也就是多了m - n次运算。
我以为这个问题应该是告一段落了,这是确定无疑的事情,但是在代码大全的第599页中提到了一个影响效率的问题,是分页,是由于缺页导致的运算速度变慢。而例子如下:
for (int column = 0 ; column < max_columns; ++ column)
{
for (int row = 0; row < max_rows; ++row)
{
table[row][column] = BlankTavleElement();
}
}
问题出在table中的每一个元素都有大约4K字节长,如果该table的行太多,那么每一次程序访问不同行元素的时候,操作系统都需要页交换。
因此以后还是注意一下。
- 关于双重循环
- 关于ajax的双重循环加载
- 关于C语言break跳出双重循环的小技巧
- 双重循环sql操作
- 嵌套实现双重循环
- 双重c:forEach 循环
- 双重for循环Test
- JAVA跳出双重循环
- for语句双重循环
- 双重for循环优化
- 怎样理解双重循环?
- 双重循环嵌套举例
- sql语句双重循环
- 双重循环的跳出
- PHP双重循环 -- 九九乘法表
- 数组与双重循环
- 双重循环打印图形
- 循环语句及双重循环
- 关于系统异常设计的再思考
- How Magento cache Blocks HTML output ----摘!!!
- ant教程详解--javac,java,jar,war,delete,copy,mkdir
- 开源软件vs云计算
- 手把手教你用XP架设VPN服务器
- 关于双重循环
- java如何打JAR包(转)
- 敏捷方法和实现(四)
- ASP.NET中在线用户统计
- 地震频繁
- 你感觉你是个JAVA高手吗,那么就来挑战一下吧,下面可是ACM一道很经典的题目,试一吧!
- Weka新手文章
- 模板类
- 工欲善其事必先利其器–SimpleTestBed