java用递归找出一个数组中的最大值
时间: 2024-03-11 16:50:54 浏览: 111
数组最大值(递归)
可以使用递归的方式来找出一个数组中的最大值,具体步骤如下:
1. 定义一个方法,传入一个数组和数组的长度作为参数。
2. 在方法中判断数组的长度是否为1,如果是,直接返回数组中唯一的元素。
3. 如果数组的长度不为1,则将数组分为左右两部分,分别递归调用该方法,找到左半部分和右半部分的最大值。
4. 比较左右两部分的最大值,返回更大的那个。
Java代码如下:
```
public static int getMax(int[] arr, int len) {
if (len == 1) {
return arr[0];
}
int leftMax = getMax(Arrays.copyOfRange(arr, 0, len/2), len/2);
int rightMax = getMax(Arrays.copyOfRange(arr, len/2, len), len-len/2);
return leftMax > rightMax ? leftMax : rightMax;
}
```
阅读全文