选择排序算法
来源:互联网 发布:阴司守门人网络剧资源 编辑:程序博客网 时间:2024/06/08 09:58
定义
选择排序(Selection sort)是一种简单直观的排序算法。
工作原理:是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法!
例题
随意定义十个数字的数组 int[] numbers = {12,45,15,16,48,11,91,54,65,19}。
分析:
第一趟: [11] {12,15,16,19,45,48,54,65,91}
第二趟: [11,12] {15,16,19,45,48,54,65,91}
第三趟: [11,12,15] {16,19,45,48,54,65,91}
…..
第(N-1)趟: [11 12 15 16 19 45 48 54 65 91]
/* * 选择排序算法 * */public class SelectionSort { public static void main(String[] args) { //定义十个数 int[] numbers = {12,45,15,16,48,11,91,54,65,19}; //一共需要比较n-1趟 for (int i = 0; i < numbers.length-1; i++) { //找最小 int min = numbers[i]; //可能比较n-1次 for (int j = i+1; j < numbers.length; j++) { if(min > numbers[j]){ min = numbers[j]; } } //判断最小的数出现在什么位置 int j; for (j = i; j < numbers.length; j++) { if(numbers[j] == min){ break; } } //j的位置最小,交换位置 if(j > i){ int temp = numbers[j]; numbers[j] = numbers[i]; numbers[i] = temp; } } //循环输出 for (int i = 0; i < numbers.length; i++) { System.out.print(numbers[i]+"\t"); } }}
0 0
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法--选择排序
- 排序算法---选择排序
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法-选择排序
- 排序算法---选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 排序算法--选择排序
- 算法-排序-选择排序
- 排序算法:选择排序
- 排序算法---选择排序
- 排序算法:选择排序
- 排序算法--选择排序
- 算法排序 -- 选择排序
- ListView2——Android群英传
- 51nod 1208 && POJ 2482:Stars in Your Window【普通线段树】
- 虚指针的对齐_boolan_第二门课_第一周_作业
- ElasticsearchCRUD使用(十三)【Elasticsearch谷歌地图搜索的MVC应用】
- linux上ActiveMQ 集群安装、配置和高可用测试
- 选择排序算法
- ROS多机通信
- You-Dont-Know-JS
- HBuilder连接夜神模拟器
- Ubutu 17.04 WiFi热点创建
- J.U.C — Collections — CopyOnWrite****
- String StringBuffer StringBuilder
- 题解:盒子(UVa 1587)
- c++学习笔记--链表类应用