今天開始學Java 排序算法之簡單選擇排序

思路:開始假定第一個元素是最小元素,然後從剩下的元素中選一個最小(或者最大)的,與第一個元素交換位置。接着從第二個元素開始是最小元素,從剩下的元素中選一個最小(或者最大)的,與第二個元素交換位置。以此類推,直到第n-1個元素(倒數第二個數)和第n個元素(最後一個數)比較爲止。

public static void sort(int[] a){
for(int i =0;i<a.length-1;i++){
//mark
int min = a[i];
int min_index = i;
for(int j = i+1;j<a.length;j++){
if(min > a[j]){
min = a[j];
min_index = j;

}
}
//if a[i] is not the min,change the a[i] and min
if( min != a[i]){
int tmp = a[i];
a[i] = a[min_index];
a[min_index] = tmp;
}
}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章