2

可能重复:
为什么循环的顺序会在迭代二维数组时影响性能?

我有这个简单的 for 循环

for (i=0;i<10000;i++){
   for(j=0;j<10000;j++){
      a[i][j]=i+j;
      }}

当我将这些 for 循环的顺序更改为:

for (j=0;j<10000;j++){
   for(i=0;i<10000;i++){
      a[i][j]=i+j;
      }}

我看到运行时间急剧增加。为什么会这样?

谢谢

4

1 回答 1

1

访问局部性的丢失会导致更多的页面错误。

于 2012-04-18T09:18:23.687 回答