选择排序的核心思想就是每一次遍历都会找到最小的那个值,然后将最小的值与当前的第i个值进行呼唤。两次遍历之后就会得到一个从小到大的排序算法。
下面是一个简单的java 选择排序算法:
package paixu.selectionSort;
public class SelectionSort{
public static int[] selectionSort(int[] array){
int n = array.length;
/*
* 每一次遍历都找出最小的那个值,把它赋值给当前下标为i的数组。
*/
for(int i=0;i<n;i++){
int min=i;
//从第i+1个开始,找最小值
for(int j=i+1;j<n;j++){
if(array[j]<array[min]){
min = j;
}
}
//找到之后和第i个元素交互,每一次遍历找到最小的那个值,与当前的第i个值互换位置。
int temp = array[i];
array[i] =array[min];
array[min] = temp;
}
return array;
}
public static void main(String[] args){
int array[] = {1,9,3,7,8,5};
System.out.print(SelectionSort.selectionSort(array));
}
}