思想:每次找出最小值,记录下标;
简单选择排序代码实现:
static public void simpleSelectionSort(List<Integer>list) {
int min = 0;
for(int i=0;i < list.size()-1;i++){
for(int j = i+1;j<list.size();j++){
if (list.get(min) > list.get(j)){
min = j;
}
}
if (i != min) {
swap(list, min, i);
}
}
}
//交换元素
static public void swap(List<Integer> list,int i,int j) {
Integer first = list.get(i);
Integer second = list.get(j);
list.set(i, second);
list.set(j, first);
}