3 回答

TA貢獻1828條經驗 獲得超4個贊
由于您使用recordTimes.length
,recordTimes
必須Integer[]
是一個array,而不是ArrayList
.
任何一個:
聲明
Integer[] recordTimes
(并將返回類型Integer[]
也更改為);將其聲明為,并在交換操作中
ArrayList<Integer> recordTimes
使用size()
而不是length
, 和(盡管這是一種交換列表元素的更簡潔的方法)。get
set
Collections.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.
}
添加回答
舉報