编辑代码

/**
 * @author WUHAO
 * @create 2022-12-05 21:40
 */
public class Main
{
    public static void insertArr(int[] arr)
    {
        int len = arr.length;
        for (int i = 0; i < len - 1; i++)
        {
            int current = arr[i + 1];
            int index = i;
            while (index >= 0 && current < arr[index])
            {
                arr[index + 1] = arr[index];
                index--;
            }
            arr[index + 1] = current;
        }
    }
    public static int max,min;
    public static void slove(int[] a,int left,int right)
    {
        if(left==right)
        {
            min=Math.min(a[left],min);
            max=Math.max(a[right],max);
            return;
        }
        else if(left+1==right)
        {
            if(min!=0)
            {
                min=Math.min(Math.min(a[left],a[right]),min);
            }
            else
            {
                min=Math.min(a[left],a[right]);
            }
            max=Math.max(Math.max(a[left],a[right]),max);
            return;
        }
        else
        {
            int mid=(left+right)/2;
            slove(a,left,mid);
            slove(a,mid+1,right);
        }
    }
    public static void main(String[] args)
    {
        int[] arr =new int[]{11, 9, 20, 56, 42, 3, 7,15,16};
        insertArr(arr);
        slove(arr,0,arr.length-1);
        System.out.println("最大值为:"+max+"\n最小值:"+min);
    }
}