Java递归实现

如果单纯的二分太不极客了。
递归万岁。

实现原理就是中间的数大于左边就往右边递归,中间的数大于左边就往左边递归。

public int minNumberInRotateArray(int [] array) {
        if(array.length==0) return 0;
        if(array[0] < array[array.length-1]||array.length==1) return array[0];
        if(array.length==2) return array[1];
        if(array[array.length/2]>array[0]) {
            return minNumberInRotateArray(Arrays.copyOfRange(array,array.length/2+1,array.length));
        }else{
            return minNumberInRotateArray(Arrays.copyOfRange(array,0,array.length/2+1));
        }
    }