【发布时间】:2018-08-24 15:09:15
【问题描述】:
我想通过逐行检查来找到行的最大元素,对于列也是如此!
示例二维数组:
3 7 2
5 1 4
6 9 8
通过逐个元素检查每一行元素,它应该是这样的:第一行 7 是最大值,然后第二行没有大于 7 的元素,所以最大值仍然是 7,然后第三行 9 大于7 所以行的最大元素是 9!
列也是一样:第一列最大为 6,第二列最大为 9,第三列没有元素大于 9,因此最大列数为 9!
理论上行的最大元素也是列的最大元素!
所以,我需要编写一个 Java 程序来执行此操作,以便最大行数和最大列数的结果相等,这意味着我的程序可以正常运行!
在我的代码中,我已将二维数组存储在 bigMatrix[][] 上,但我不明白如何使用 bigMatrix[i] 获取整行,它有效,但我不明白如何,我不明白'不知道如何做同样的事情来获取每一列并将它们作为数组传递给我的函数getMax() 以找到该列的最大值!
**下面的代码可以很好地找到Rows的最大元素,但我不知道如何找到Columns的最大元素!
int rowMax = Integer.MIN_VALUE;
for(int i = 0; i < 3; i++) {
if(rowMax < getMax(bigMatrix[i])) {
rowMax = getMax(bigMatrix[i]);
}
}
public static int getMax(int[] ourArray) {
int max = Integer.MIN_VALUE;
for (int i = 0; i < ourArray.length; i++) {
max = Math.max(max, ourArray[i]);
}
return max;
}
【问题讨论】:
-
它是
n*n矩阵吗?即行数等于列数? -
所以 TL;DR,您需要一种方法来获取每列的数组,对吧?
标签: java arrays multidimensional-array