package shujujiegou;
//判断数组是否有序;
public class digui1 {
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 4, 50};
int[] arr2;
arr2 = new int[]{12, 3, 5, 5};
System.out.println(panduanyouxu(arr1, 5));
System.out.println(panduanyouxu(arr2, 4));
}
public static boolean panduanyouxu ( int[] arr, int index){
if (index == 1) {
return true;
}
return (arr[index - 1] <= arr[index - 2]) ? false : panduanyouxu(arr, index - 1);
}
}
一些博客和书上写的是下面这样的:
public static boolean panduanyouxu ( int[] arr, int index){
if (arr.length == 1) { //注意这一行
return true;
}
return (arr[index - 1] <= arr[index - 2]) ? false : panduanyouxu(arr, index - 1);
}
arr.length 的长度是一直不变的,会出现无限循环,。