(一)选择排序
通俗的原理:每次遍历整个数组,找出最小的放在第一位,之后继续找剩下n-1个的最小的,放在第二位,一直这样下去......
public class SelectSort {
public static void opFunction(int[] arr){
//先将找出n个元素中最小的放在第一位,之后,找出剩下的n-1个元素中最小的放在第二位.....
for(int i=0;i<arr.length;i++){
int k=i;
/*第一轮,获取最小的值,原理:取第一个与所有的元素作比较,若比第一个小就将编号给第一,之后比较是否交换了编号,若换了,就将第一个元素值跟arr[j]交换,最后通过for遍历所有元素,进行第二轮、第三轮...的比较
*/
for(int j=i+1;j<arr.length;j++){
if(arr[j]<arr[k]){
k=j;
}
}
if(k!=i){
int t;
t=arr[k];
arr[k]=arr[i];
arr[i]=t;
}
}
}
public static void main(String args[]){
int[] arr={2,9,5,1,8,4};
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]);
}
//排序处理
opFunction(arr);
for(int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
}