Java - 检查数组是否是已排序的后代

时间:2018-02-11 13:00:19

标签: java algorithm sorting

我需要检查数组是否严格按顺序排序。 我写了以下代码

public boolean isSortedDescendant(int [] array){
    if ((array.length == 0) || (array.length == 1)) {
        return true;
    } else {
        for(int i = 0; i < array.length - 1; i++){
            if (array[i] > array[i + 1]) {
                return true;
            }
        }
        return false;
    }
}

但它无法正常工作。为了

   int[] array2 = {3, 2, 2};
至少

我花了很多时间用于不同的方法,但没有任何运气。

1 个答案:

答案 0 :(得分:7)

只有在检查完所有元素后才能返回true:

public boolean isSortedDescendant(int [] array){
    if ((array.length == 0) || (array.length == 1)) {
        return true;
    } else {
        for(int i = 0; i < array.length - 1; i++){
            if (array[i] <= array[i + 1]) {
                return false;
            }
        }
        return true;
    }
}