我已经调试这段代码有一段时间了,我只是不明白为什么它不能工作。这是在Java中实现顺序插入排序的尝试。
public void resultSort(int[] resultSet){
int j;
for(int i = 0; i < resultSet.length; i++){
j = i;
while(j > 0 && resultSet[j-1] < resultSet[j]){
swap(j, j-1);
j = j-1;
}
}
}
public void swap(int index1, int index2){
int sw = numbers[index1];
numbers[index1] = numbers[index2];
numbers[index2] = sw;
}
如果有人能指出这里的错误,我会很高兴的。提前谢谢!
最佳答案
你似乎对numbers
和resultSet
有意见如果将numbers
数组作为参数传递给排序函数,它就可以工作。
一些建议:
将resultSet
作为参数传递给swap
函数,以保持实际排序的数组的一致性
不要对此类操作使用类范围的数组(这一个是有争议的,取决于您的实际任务)