java实现找出二维数组中的鞍点(附完整源码)
时间: 2023-12-20 13:21:24 浏览: 181
好的,下面是Java实现找出二维数组中的鞍点的完整源码,注释中有详细的解释。
```java
public class Main {
public static void main(String[] args) {
// 定义一个二维数组
int[][] arr = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
// 调用方法查找鞍点
findSaddlePoint(arr);
}
/**
* 查找二维数组中的鞍点
* @param arr 二维数组
*/
public static void findSaddlePoint(int[][] arr) {
// 遍历每一行
for (int i = 0; i < arr.length; i++) {
// 找出该行最小值的列号
int minIndex = 0;
for (int j = 1; j < arr[i].length; j++) {
if (arr[i][j] < arr[i][minIndex]) {
minIndex = j;
}
}
// 判断该列的值是否为该列的最大值
boolean isSaddlePoint = true;
for (int k = 0; k < arr.length; k++) {
if (arr[k][minIndex] > arr[i][minIndex]) {
isSaddlePoint = false;
break;
}
}
// 输出找到的鞍点
if (isSaddlePoint) {
System.out.println("找到鞍点:" + arr[i][minIndex] + ",位于第 " + (i + 1) + " 行,第 " + (minIndex + 1) + " 列。");
}
}
}
}
```
这段代码通过遍历每一行,找出该行最小值的列号,再判断该列的值是否为该列的最大值,从而找出鞍点。
阅读全文