第十六周项目1(3)——直接选择排序
来源:互联网 发布:宋思明 知乎 编辑:程序博客网 时间:2024/04/27 13:34
/*Copyright (c) 2015,烟台大学计算机学院*All right reserved*文件名称:main.cpp*作者:姜延锴*完成日期:2016年12月16日*版本号:v1.0*问题描述:验证直接选择排序,完成测试。*输入描述:无*程序输出:测试数据*/
代码
#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType} RecType; //排序的记录类型定义void SelectSort(RecType R[],int n){ int i,j,k,l; RecType temp; for (i=0; i<n-1; i++) //做第i趟排序 { k=i; for (j=i+1; j<n; j++) //在当前无序区R[i..n-1]中选key最小的R[k] if (R[j].key<R[k].key) k=j; //k记下目前找到的最小关键字所在的位置 if (k!=i) //交换R[i]和R[k] { temp=R[i]; R[i]=R[k]; R[k]=temp; } printf("i=%d: ",i); for (l=0; l<n; l++) printf("%d ",R[l].key); printf("\n"); }}int main(){ int i,n=10; RecType R[MaxSize]; KeyType a[]= {9,8,7,6,5,4,3,2,1,0}; for (i=0; i<n; i++) R[i].key=a[i]; printf("排序前:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); SelectSort(R,n); printf("排序后:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); return 0;}
0 0
- 【第十六周 项目1(3)—直接选择排序】
- 第十六周项目3—选择排序之直接排序
- 第十六周项目1-(3)直接选择排序
- 第十六周项目1-(3)直接选择排序
- 第十六周项目1(3)——直接选择排序
- 第十六周项目1(3)——直接选择排序
- 第十六周实践项目1—验证算法(3)直接选择排序
- 第十六周项目1-直接选择排序
- 第十六周项目(1):验证算法5——直接选择排序
- 第十六周项目1(5)验证算法——直接选择排序
- 第十六周项目一(3)直接选择排序
- 第十六周项目4—直接选择排序
- 第十六周项目1(5)-直接选择排序
- 第十六周 -项目1 -(5)直接选择排序
- 第十六周 项目1(2)直接选择排序
- 第十六周 项目1 -(5)直接选择排序
- 第十六周上机实践—项目1(4)—验证算法 冒泡排序 直接选择排序
- 第十六周项目1(3)--验证算法之直接选择排序
- Unity_太阳月亮地球的自转公转脚本
- java 详解接口、继承和多态
- 信号与系统:卷积
- 面试题积累篇-简单算法(二)
- DNA序列找出GC比例最高的子串
- 第十六周项目1(3)——直接选择排序
- iOS 高德地图API不能定位及INVALID_USER_SCODE问题
- Android 关于getViewTreeObserver()
- PHP学习指南
- 数据挖掘中的线性代数工具
- python 函数基础
- linux读书摘要--vim文本编辑器
- 正方教务系统课表成绩抓取核心代码解析,你也能实现超级课程表的功能
- 使用JSP技术实现百万富翁猜数字游戏