[英]the difference between 2d array
我想知道2D數組中這些循環之間的區別是什么:
for (int r = row - 1, c = column - 1; r >= 0 && c >= 0; r--, c--) {
...
}
for(int r=row-1;r>=0;r--){
for(int c=column-1;c>=0;c--){
...
}
}
我假設您要求單個外部循環和嵌套循環之間的區別。 不同之處在於單個循環將遍歷2D數組的對角線和嵌套循環,迭代遍歷數組的每個索引。 例如,如果有6行和4列,則:
for (int r = row - 1, c = column - 1; r >= 0 && c >= 0; r--, c--) {
System.out.println(r + " " + c);
}
會產生:
5 3
4 2
3 1
2 0
而嵌套循環
for(int r=row-1; r>=0; r--) {
for(int c=column-1; c>=0; c--) {
System.out.println(r + " " + c);
}
}
會屈服
5 3
5 2
5 1
5 0
4 3
4 2
4 1
4 0
3 3
3 2
3 1
3 0
2 3
2 2
2 1
2 0
1 3
1 2
1 1
1 0
0 3
0 2
0 1
0 0
第一次迭代n
次,其中n
是row
和column
。 第二次迭代m
次,其中m
是row
* column
。 那是
Math.min(row, column)
和
row * column
分別。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.