目录:
1、介绍
2、步骤
3、图解
4、代码展示
5、结果展示
————————————————————————————
1、介绍
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
2、步骤
1、从左到右顺序比较
2、第一个角标值依次比较第二个角标值直到最后一个角标值
3、第二个角标值依次比较第三个角标值直到最后一个角标值
4、直到数组倒数第二个和倒数第一个比较完毕
3、图解
4、代码展示
package com.datastructure.solr;
import java.util.Arrays;
/**
* Created by yuhui on 2017/4/24.
*
* 选择排序
*
*/
public class A1_SelectSort {
public static void main(String ars[]) {
int[] a={9,16,21,23,30,49,20,27};
System.out.println("初始状态: "+Arrays.toString(a));
int[] b = SelectSort(a);
System.out.println("最终状态: "+Arrays.toString(b));
}
public static int[] SelectSort(int[] a){
int tmep,num = 0;
int i ,j;
for(i=0;i<a.length-1;i++){
for(j=i+1;j<a.length;j++){
if(a[i] > a[j]){
tmep = a[j];
a[j] = a[i];
a[i]=tmep;
}
}
System.out.println("第"+(++num)+"趟排序: "+Arrays.toString(a));
}
return a;
}
}
5、结果展示
初始状态: [9, 16, 21, 23, 30, 49, 20, 27]
第1趟排序: [9, 16, 21, 23, 30, 49, 20, 27]
第2趟排序: [9, 16, 21, 23, 30, 49, 20, 27]
第3趟排序: [9, 16, 20, 23, 30, 49, 21, 27]
第4趟排序: [9, 16, 20, 21, 30, 49, 23, 27]
第5趟排序: [9, 16, 20, 21, 23, 49, 30, 27]
第6趟排序: [9, 16, 20, 21, 23, 27, 49, 30]
第7趟排序: [9, 16, 20, 21, 23, 27, 30, 49]
最终状态: [9, 16, 20, 21, 23, 27, 30, 49]
如果您喜欢我写的博文,读后觉得收获很大,不妨小额赞助我一下,让我有动力继续写出高质量的博文,感谢您的赞赏!!!