我需要幫助創建一個遞歸方法來查找向量中的最大值。該方法應具有以下簽名:在數組遞歸方法中查找最大整型值
public int max(int[] v)
並使用私人幫助方法。
下面是我試圖使用方法:本
private int biggest(int a, int b){
if(a > b){
return a;
}
else{
return b;
}
}
public int maxRecursive(int[] v){
if(v.length > 1){
return biggest(v[0], maxRecursive(Arrays.copyOfRange(v, 1, v.length - 1)));
}
else{
return v[0];
}
}
然而,一切似乎做的是返回數組的中間值。例如:如果數組是'{1,2,3,5,6,7,8} 該方法返回5.
你說有一個Vector被發現,但你的代碼展示了通過一種原始的陣列搜索。這是什麼?另外,你爲什麼要遞歸地做這件事,這是沒有意義的。只需做一個直線運行。 – 2014-11-06 17:03:01
我正在上一門編程課,這是其中一項任務。管理創建一個迭代,但我卡在遞歸方法。 – 2014-11-06 17:12:40
你應該如何處理零大小的數組? – fge 2014-11-06 17:16:32