???????????Selection Sort ????????? ?????????Simple Selection Sort?? ?????????????
?????????????(Simple Selection Sort)??
???????????????????e??????Bubble Sort?? ????ζ???????μ???????????????????????????λ?á??????????e??????????η???????С??????????????????????λ??? ?? ?????????????????????е??????λ?y????????
?????????????????R={37?? 40?? 38?? 42?? 461?? 5??  7?? 9?? 12}
???????????????У?37????5?????? ?γ??μ????? R1={5??40??38??42??461??37??7??9??12}
???????????????У?40????7?????? ?γ??μ????? R2={5??7??38??42??461??37??40??9??12}
??????????????????????????????????????У?38??42С?????????????н??????????
??????????????????????Java???汾??
public static void selectionSort(int[] data) {
if (data == null || data.length <= 1)
return;
int i?? j?? value?? minPos?? len = data.length;
int outer = len - 1?? tmp;
for (i = 0; i < outer; i++) {
value = data[i];
minPos = -1;
for (j = i + 1; j < len; j++) {
if (data[j] < value) {
minPos = j;
value = data[j];
}
}
if (minPos != -1) {
tmp = data[i];
data[i] = value;
data[minPos] = tmp;
}
//            for (int k = 0; k < len; k++) {
//                System.out.print(data[k] + " ?? ");
//            }
//            System.out.println();
}
}
public static void main(String[] args) {
int[] coll = {
37?? 40?? 38?? 42?? 461?? 5??  7?? 9?? 12
};
selectionSort(coll);
for (int i = 0; i < coll.length; i++) {
System.out.print(coll[i] + " ?? ");
}
}