对于我被要求解决的问题之一,我找到了使用for循环的数组的最大值,所以我试图用递归找到它,这就是我想出来的搭配:使用递归在数组中寻找最大值
public static int findMax(int[] a, int head, int last) {
int max = 0;
if (head == last) {
return a[head];
} else if (a[head] < a[last]) {
return findMax(a, head + 1, last);
} else {
return a[head];
}
}
所以它工作正常,并获得最大的价值,但我的问题是:这是确定有基础方案返回[主治]和的情况下,在头部值是>最后的价值?
你测试了吗? – Ingo
是的,我做了,它的工作 – Scarl
它不是你的错,但它完全idiodic通过递归找到数组中的最大值。这是递归技术的滥用。 – AlexWien