我试图找到最大的双打数组,但是,困难的是你必须将数组分成两个切片,但是之后你需要计算2个子切片的最大值和返回2个值中最大的一个,它需要使用递归。
你能否给我一个如何开始的小费。
public static double getLargest(double [] a, int low, int high)
{
int c = (low+high)/2;
double slice1[] = Arrays.copyOfRange(a, low,c + 1 );
double slice2[] = Arrays.copyOfRange(a,c , high+1);
if(low > high || high > a.length-1 ||low < 0 )
throw new IllegalArgumentException();
if(low == high )
return a[low];
else{
}
}
}
答案 0 :(得分:1)
你必须问自己在else
部分做了什么。
您现在面对的是两个或更多元素的数组。
你可以说: