【发布时间】:2018-05-27 04:39:01
【问题描述】:
例如,如果我有:
int Myarray[][] = new int[][] {{1,2}, {3,4}};
for (int line=0; line < Myarray.length; line++) {
for (int column = 0; column < Myarray[0].length; column++) {
// do something ...
}
}
如果没有两个循环,我怎么能遍历整个数组?
【问题讨论】:
-
没有。但是两个循环有什么问题?总迭代次数将相同。
-
如果你能保证所有组件数组的长度相同且不为空,你可以做
for (i in [0... cols*rows]) { (x,y) = transformIndex }。但又一次:为什么?您可以考虑使用一维数组。 -
问题是我正在研究是否有办法降低这个问题的渐近复杂度“O(n^2)”。
-
只要总迭代次数相同,这对您的渐近复杂度没有任何作用。
-
您需要知道“做某事”代码中的行值和列值,还是只需要每个单元格的值?