基础:排序算法(三)选择排序
2018-02-05 14:49
239 查看
基础:排序算法(三)选择排序
算法思想:选择排序是一种不稳定的排序方法,每一趟从待排序的数据元素中选出最小(或最大)
的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
其主要应用于计算机和数学领域。它的主要优点与数据移动有关。
如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,
它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。
在所有的完全依靠交换去移动元素的排序方法中,选择排序属于非常好的一种。
详细介绍:选择排序
#include<stdlib.h> #include<stdio.h> void main() { int x[5]={9,8,3,5,2}; int i,j,min,temp; for (i = 0; i < 5-1; i++) { min = i; for (j=i+1; j<5; j++) { if(x[j]<x[min]) { min =j; } } if(min!=i) { temp = x[i];//把最大值赋给temp x[i] = x[min];//最小值放在数组首 x[min] = temp;//最大值放在数组末 } } printf("原数组为9 8 3 5 2\n"); printf("排序后数组为:"); for (i = 0; i < 5; i++) { printf("%-3d",x[i]); } system("pause"); }
结果:
相关文章推荐
- 黑马程序员——java基础排序算法:选择排序、冒泡排序和插入排序
- 黑马程序员_java基础学习笔记之排序算法(选择排序、冒泡排序
- 排序算法---基础算法(冒泡排序,快速排序,选择排序,直接插入排序,桶排序)
- 三种基础排序算法(选择排序、插入排序、冒泡排序)
- 四基础排序算法:插入排序、选择排序、冒泡排序、快速排序
- PHP四种基础排序算法--冒泡,直接插入,快速和选择排序
- Java语言基础-排序算法-选择排序
- 基础排序算法(冒泡排序、选择排序、插入排序)
- PHP基础排序算法(二)选择排序
- 11.java语言基础-排序算法-选择排序
- 深层次两张图解经典6大排序与6大基础数据结构——学完这些,妈妈再也不用担心我的排序算法与数据结构,学习笔记大放送
- 排序算法-->选择排序,插入排序,并归排序,快速排序
- 常见算法:C语言中的排序算法--冒泡排序,选择排序,希尔排序
- 插入排序,选择排序,冒泡排序等常用排序算法(java实现)
- java实现各种排序算法(包括冒泡排序,选择排序,插入排序,快速排序(简洁版))及性能测试
- 排序算法总结(八)选择排序
- 3种排序算法的可视化程序 冒泡排序 选择排序 快速排序
- 排序算法--选择排序(Selection Sort)_C#程序实现
- 【排序】选择排序算法
- 黑马程序员——Java基础 数组排序的两种实现方法,选择和冒泡