我必须在Java中编写一个递归方法,如果行是递减的,则返回true,否则返回false。递归方法检查一行整数是否递减:return true/false
这是我尝试过,但它不能正常工作:我觉得你有不必要的情况下,如果大小小于2,你只能假设真
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;
}
}
什么不起作用? –
您的问题与基本案例。什么是'isDescending'应该返回长度为1的列表? – Tunaki
@Tunaki - 我不认为也有这个问题。他正在检查列表是递减的,并且大小列表不能被称为递减。因此否则块应该很好。 –