思路:每次選擇待排序列中關鍵字最小的記錄順序放入已排序列。
步驟:1、從待排序列第一個記錄開始,選出關鍵字最小的記錄,并将其與序列中第一個記錄交換位置;
2、從待排序列第二個記錄開始,選出 關鍵字最小的記錄,并将其與序列中第二個記錄交換位置;
3、重複以上步驟共n-1次,其中n為待排序列中有n個記錄。
public class SelectionSort {
public static void main(String[] args) {
// TODO 自動生成的方法存根
int[] seq={11,3,54,4,5,64,34,-9};
method(seq);
for(int i=0;i<seq.length;i++)
System.out.print(seq[i]+" ");
}
private static void method(int[] arr){
int temp_subscript=0,temp;
for(int i=0;i<arr.length-1;i++){
temp_subscript=i;
for(int j=i;j<arr.length-1;j++){//取最小值
if(arr[temp_subscript]>arr[j+1])
temp_subscript=j+1;
}
if(temp_subscript!=i){//與第i個記錄交換位置
temp=arr[i];
arr[i]=arr[temp_subscript];
arr[temp_subscript]=temp;
}
}
}
}