3 回答
TA贡献1828条经验 获得超4个赞
由于您使用recordTimes.length,recordTimes必须Integer[]是一个array,而不是ArrayList.
任何一个:
声明
Integer[] recordTimes(并将返回类型Integer[]也更改为);将其声明为,并在交换操作中
ArrayList<Integer> recordTimes使用size()而不是length, 和(尽管这是一种交换列表元素的更简洁的方法)。getsetCollections.swap
TA贡献1859条经验 获得超6个赞
这是解决方案,但我没有检查您是否正确实施了选择排序。
int [] array = {2,4,5,6,4,7,9,4};
int [] sortedArray = selectionSort(array);
public int[] selectionSort(int [] recordTimes){ //The selection sort algorithm
for(int i=0;i<recordTimes.length-1;i++){ //Iterate through the list of numbers
for(int j=i+1;j<recordTimes.length;j++){
if(recordTimes[i]>recordTimes[j]){
int temp = recordTimes[i];
recordTimes[i] = recordTimes[j];
recordTimes[j] = temp;
}
}
}
return recordTimes;
}
TA贡献1853条经验 获得超6个赞
您应该将整数的 ArrayList 传递给方法,例如
public ArrayList<Integer> selectionSort(ArrayList<Integer> recordTimes) {
// rest of your code.
}
添加回答
举报
