JavaScript
function selectSort(ary) { var i, j, k, temp; var len = ary.length; for(i=0; i<len; i++) { k = i; // 找出最小的元素索引 for(j=i+1; j<len; j++) { if(ary[k] > ary[j]) { k = j; } } temp = ary[i]; ary[i] = ary[k]; ary[k] = temp; } return ary; } // var ary = [5,4,3,2,1]; // console.log(selectSort(ary));
Java
public class Test {
public static void selectSort(int[] ary) {
int i, j, k, temp;
int len = ary.length;
for(i=0; i<len; i++) {
k = i;
for(j=i+1; j<len; j++) {
if(ary[k] > ary[j]) {
k = j;
}
}
temp = ary[i];
ary[i] = ary[k];
ary[k] = temp;
}
}
public static void main(String[] args) {
int[] ary = {5,4,3,2,1};
Test.selectSort(ary);
for(int it : ary) {
System.out.println(it);
}
}
}
C
void selectSort(int ary[], int len) { int i, j, k, temp; for(i=0; i<len; i++) { k = i; // 找出最小的元素索引 for(j=i+1; j<len; j++) { if(ary[k] > ary[j]) { k = j; } } temp = ary[i]; ary[i] = ary[k]; ary[k] = temp; } } main() { int i; int ary[] = {5,4,3,2,1}; selectSort(ary, 5); for(i=0; i<5; i++) { printf("%d", ary[i]); } }