基础算法之排序(2)--选择排序
2014-03-23 12:24
441 查看
/********************************************************************************************************** * Function : test * Create Date : 2014/03/23 * Author : NTSK13 * Email : beijiwei@qq.com * Copyright : 欢迎大家和我一起交流学习,转载请保持源文件的完整性。 任何单位和个人不经本人允许不得用于商业用途 转载请注明 转自 http://blog.csdn.net/beijiwei * Version : V0.1 * date : 2014/03/23 * history : V0.1 *********************************************************************************************************** 基础算法之排序(2)--选择排序 基本思想: 对待排序的一组数据从前之后进行扫描,若发现相邻的两个数不同时,将这两个数进行交换. 升序和降序是同样道理 假如待排序的一组数存于array ,则需要对数组进行N-1次扫描 第1次扫描: 目标array[0] , 分别和array[1],array[2]...array 进行对比,若比array[0]小,则交换.之后array[0]为最小值 第2次扫描: 目标array[1] , 分别和array[2],array[3]...array 进行对比,若比array[1]小,则交换.之后array[0]为次小值 . . . 第N-1次扫描: 目标array[N-2] , 和array[N-1] 进行对比,若比array[N-1]小,则交换.之后array[N-1]为最大值. 结束. **********************************************************************************************************/ #include<stdio.h> int main() { int i=0,j=0,tmp=0,array[10]={2,5,6,8,4,3,1,7,9,0}; printf("Before sort, The element of array is: \n"); for(i=0;i<10;i++) { printf("%d \t",array[i]); } /*********************************************************************************************************/ for(i=0;i<9;i++) for(j=i;j<9;j++) { if(array[i]>array[j+1]) { tmp=array[i]; array[i]=array[j+1]; array[j+1]=tmp; } } /*********************************************************************************************************/ printf("\n After sort, The element of array is: \n"); for(i=0;i<10;i++) { printf("%d \t",array[i]); } printf("\n"); return 0; }
相关文章推荐
- 【基础算法】选择排序
- 基础算法之排序(2)--简单选择排序
- 基础算法-直接选择排序
- PHP四种基础算法详解(冒泡排序、选择排序、插入排序、快速排序)
- 算法基础之排序篇-选择排序
- 算法基础:排序(一)——选择排序、插入排序、Shell排序——Python实现
- 基础算法 :冒泡排序,选择排序。。。。
- 算法基础:排序(一)——选择排序、插入排序、Shell排序——Python实现
- java基础算法之选择排序
- 基础算法之排序(2)--选择排序 改进
- 算法基础之----二元选择排序
- 数据结构与算法——三种基础排序算法C#实现(冒泡排序、选择排序、插入排序)
- 数据结构与算法之基础排序(冒泡/插入/选择)<十>
- 基础算法:选择排序
- 基础算法-直接选择排序
- 基础算法之选择排序
- 算法基础之插入排序,选择排序
- 基础算法之四--排序: 之选择排序
- 基础算法之 选择排序
- 基础算法(三)---选择排序(Java)