我正在尝试完成此合并排序方法,但由于某些原因,我会看到错误消息“对于参数类型T,T,运算符
对于if语句
if(a[beginHalf1] <= a[beginHalf2])
{
tempArray[index] = a[beginHalf1];
beginHalf1++;
}
这是完整的代码
public static <T extends Comparable<? super T>>
void merge(T[] a, T[] tempArray, int first, int mid, int last){
int beginHalf1 = first;
int endHalf1 = mid;
int beginHalf2 = mid +1;
int endHalf2 = last;
int index = 0;
while((beginHalf1 <= endHalf1) && (beginHalf2 <= endHalf2) )
{
if(a[beginHalf1] <= a[beginHalf2]){
tempArray[index] = a[beginHalf1];
beginHalf1++;
}
else
{
tempArray[index]=a[beginHalf2];
beginHalf2++;
}
index++;
}
} // end merge
最佳答案
运算符> =
if(a[beginHalf1].compareTo(a[beginHalf2]) <= 0)