我必须用 Java 编写一个递归方法,如果一行是降序,则返回 true,否则返回 false。
这是我尝试过的,但它不能正常工作:
ArrayList<Integer> getallen = new ArrayList();
getallen.add(500);
getallen.add(400);
getallen.add(300);
getallen.add(200);
getallen.add(100);
getallen.add(0);
System.out.println(isDescending(getallen));
}
public static boolean isDescending(ArrayList<Integer> getallen) {
if (getallen.size() >= 2) {
if (getallen.get(0) < getallen.get(1)) {
return false;
} else if (getallen.size() > 0) {
getallen.remove(0);
return isDescending(getallen);
} else {
return true;
}
} else {
return false;
}
}
最佳答案
我认为你有不必要的情况,如果大小小于 2,你只能假设为真。
尝试:
public static boolean isDescending(ArrayList<Integer> getallen) {
if (getallen.size() >= 2) {
if (getallen.get(0) < getallen.get(1)) {
return false;
} else {
getallen.remove(0);
return isDescending(getallen);
}
} else {
return true;
}
}
关于java - 递归方法检查一行整数是否为降序 : return true/false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32540437/