【发布时间】:2013-04-10 14:54:24
【问题描述】:
代码:
for ( int i = 0 ; i < n ; i++)
for ( int j = 0 ; j < n ; j++)
sum += ? ;
什么更好?
sum += a[i][j] or
sum += a[j][i]
为什么?
【问题讨论】:
-
什么语言? (我猜是 C?)
-
您似乎不了解二维数组的工作原理。 a[n] 表示“以 n 为索引的数组”,a[n][m] 表示“在以 n 为索引的数组的位置 m 处索引的值”,因此除非我们在讨论某些特定情况,否则这些不是可互换。
-
@大卫罗宾逊。是的。但是,您使用的语言有区别吗?
-
我知道它是如何工作的,我也知道不同的 n*m 矩阵。你会得到不同的表现。只想知道缓存方面
-
a[i][j],可能是由于空间局部性。
标签: c for-loop multidimensional-array