【发布时间】:2015-01-30 15:24:50
【问题描述】:
我有一个名为 arry 的二维整数数组,如下所示:
[6, 2, 7]
[3, 6, 7]
[5, 6, 1]
[5, 3, 4]
[5, 3, 8]
我想按照结果的方式对其进行排序(为此我创建了相同大小的新数组,命名为表):
[3, 6, 7]
[5, 6, 1]
[5, 3, 4]
[5, 3, 8]
[6, 2, 7]
我有这个代码:
for (int k = 0; k < numOfArrays; k++) {
int smallest = 2147483647;
int indexSmallest = 0;
for (int h = 0; h < numOfArrays; h++) {
if (arry[h][0] < smallest) {
smallest = arry[h][0];
indexSmallest = h;
}
}
tabel[k] = arry[indexSmallest];
arry[indexSmallest][0] = 2147483647;
}
for (int k = 0; k < numOfArrays; k++) {
System.out.println(Arrays.toString(tabel[k]));
}
结果是:
[2147483647, 6, 7]
[2147483647, 6, 1]
[2147483647, 3, 4]
[2147483647, 3, 8]
[2147483647, 2, 7]
如果我从未将表的任何值设置为2147483647,我不明白表如何包含2147483647?
【问题讨论】:
-
你认为
arry[indexSmallest][0] = 2147483647;会做什么?
标签: java arrays sorting multidimensional-array