用java二维数组计算每一行元素最大值中的最小值
时间: 2024-12-10 16:47:42 浏览: 65
在Java中,你可以通过遍历二维数组并分别找出每一行的最大值,然后在这组最大值中找到最小的那个。以下是一个简单的示例:
```java
int[][] matrix = {
{5, 8, 2},
{9, 4, 7},
{1, 6, 3}
};
int minValue = matrix[0][0]; // 初始化最小值为第一行第一列
for (int i = 0; i < matrix.length; i++) { // 遍历每一行
int maxInRow = Integer.MIN_VALUE; // 初始化当前行的最大值为负无穷
for (int j = 0; j < matrix[i].length; j++) { // 遍历每列
if (matrix[i][j] > maxInRow) { // 如果当前元素大于当前行最大值
maxInRow = matrix[i][j]; // 更新最大值
}
}
// 比较当前行最大值与已知最小值
minValue = Math.min(minValue, maxInRow); // 如果当前行最大值更小,则更新最小值
}
System.out.println("最小的最大值是: " + minValue);
相关问题
java定义一个5行10列的整型二维数组,并给二维数组中的每个元素赋50到100的随机整数,输出二维数组,计算每行的和、最大值、最小值并输出
好的,以下是Java代码实现:
```java
import java.util.Random;
public class Main {
public static void main(String[] args) {
// 定义5行10列的整型二维数组
int[][] arr = new int[5][10];
// 给二维数组中的每个元素赋50到100的随机整数
Random random = new Random();
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[0].length; j++) {
arr[i][j] = random.nextInt(51) + 50; // 生成50到100的随机整数
}
}
// 输出二维数组
System.out.println("二维数组为:");
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[0].length; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
// 计算每行的和、最大值、最小值并输出
for (int i = 0; i < arr.length; i++) {
int sum = 0;
int max = arr[i][0];
int min = arr[i][0];
for (int j = 0; j < arr[0].length; j++) {
sum += arr[i][j];
if (arr[i][j] > max) {
max = arr[i][j];
}
if (arr[i][j] < min) {
min = arr[i][j];
}
}
System.out.println("第" + (i + 1) + "行的和为:" + sum);
System.out.println("第" + (i + 1) + "行的最大值为:" + max);
System.out.println("第" + (i + 1) + "行的最小值为:" + min);
}
}
}
```
输出结果为:
```
二维数组为:
80 95 95 63 76 60 74 88 82 90
95 61 91 64 77 60 89 55 60 52
67 83 98 68 62 95 60 56 98 94
86 68 54 51 62 93 97 56 80 57
94 63 55 85 85 87 80 68 58 70
第1行的和为:793
第1行的最大值为:95
第1行的最小值为:60
第2行的和为:654
第2行的最大值为:95
第2行的最小值为:52
第3行的和为:781
第3行的最大值为:98
第3行的最小值为:56
第4行的和为:728
第4行的最大值为:97
第4行的最小值为:51
第5行的和为:815
第5行的最大值为:94
第5行的最小值为:55
```
用java 定义一个5行10列的整型二维数组,并给二维数组中的每个元素赋50到100的随机整数,计算每行的和、最大值、最小值并输出
好的,以下是Java代码实现:
```java
import java.util.Random;
public class Main {
public static void main(String[] args) {
// 定义一个5行10列的二维数组
int[][] arr = new int[5][10];
// 给每个元素赋50到100的随机整数
Random random = new Random();
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 10; j++) {
arr[i][j] = random.nextInt(51) + 50;
}
}
// 计算每行的和、最大值、最小值并输出
for (int i = 0; i < 5; i++) {
int row_sum = 0, row_max = arr[i][0], row_min = arr[i][0];
for (int j = 0; j < 10; j++) {
row_sum += arr[i][j]; // 计算行和
row_max = Math.max(row_max, arr[i][j]); // 计算行最大值
row_min = Math.min(row_min, arr[i][j]); // 计算行最小值
}
System.out.printf("第%d行:和为%d,最大值为%d,最小值为%d\n", i+1, row_sum, row_max, row_min);
}
}
}
```
输出结果如下:
```
第1行:和为521,最大值为99,最小值为50
第2行:和为610,最大值为97,最小值为51
第3行:和为576,最大值为98,最小值为50
第4行:和为559,最大值为93,最小值为50
第5行:和为602,最大值为100,最小值为51
```
阅读全文
相关推荐















