递归方法求数组中的最大值

package com.harrison.class02;

public class Code09_GetMax {
    
    
	public static int getMax(int[] arr) {
    
    
		return process(arr, 0, arr.length-1);
	}
	
	public static int process(int[] arr,int l,int r) {
    
    
		if(l==r) {
    
    
			return arr[l];
		}
		int mid=l+((r-l)>>1);
		int leftMax=process(arr, l, mid);
		int rightMax=process(arr, mid+1, r);
		return Math.max(rightMax, leftMax);
	}
	
	public static void main(String[] args) {
    
    
		int[] arr= {
    
    3,4,3233,20,5,-4,3,3,-312,8};
		System.out.println(getMax(arr));
	}
}

Guess you like

Origin blog.csdn.net/weixin_44337241/article/details/121574215