内部排序算法的实现的实验报告

上传人:zhu****ng 文档编号:100999147 上传时间:2022-06-04 格式:DOC 页数:4 大小:114KB
返回 下载 相关 举报
内部排序算法的实现的实验报告_第1页
第1页 / 共4页
内部排序算法的实现的实验报告_第2页
第2页 / 共4页
内部排序算法的实现的实验报告_第3页
第3页 / 共4页
点击查看更多>>
资源描述
班级 学号 姓名 实验组别 试验日期 室温 报告日期 成绩 报告内容:(目的和要求、原理、步骤、数据、计算、小结等)实验名称:内部排序算法的实现实验目的;掌握直接插入排序,希尔排序,快速排序的实现。实验环境(硬/软件要求):Windows 2000, Visual C+ 6.0实验内容:对于给定的某无序序列,分别用直接插入,希尔排序,快速排序等方法进行排序,并输出每种排序下的各趟排序结果。各排序算法输入的无序序列为:26 5 37 1 61 11 59 15 48 19。实验要求: 编程实现直接插入排序,希尔排序,快速排序各算法函数;并编写主函数对各排序函数进行测试。【C语言源程序】#include#include#define size 11typedef char datatype; /记录的其他域的类型,根据需要更改typedef structint key;datatype others; / 记录的其他域 rectype; /*为插入排序算法*/void INSERTSORT(rectype R ) /对数组R按递增序进行插入排序, R0是监视哨 int i, j;for (i=2; i=size; i+) /依次插入R2, , Rn R0=Ri; j=i-1; while (R0.key0) for (j=h; j=0)&temp.key=temp.key) & (ij)j-; /* 从右向左扫描,查找第一个关键字小于temp.key的记录 */if (ij) Ri+=Rj; /* 交换Ri和Rj */while (Ri.key=temp.key) & (ij)i+; /* 从左向右扫描,查找第一个关键字大于temp.key的记录 */if (ij) Rj-=Ri; /* 交换Ri和Rj */ while (i!=j); Ri=temp; /* 基准temp已被最后定位 */ return i; /* PARTITION */void QUICKSORT(rectype R , int s1, int t1) /* 对Rs1Rt1做快速排序 */ int i; if (s1t1) /* 只有一个记录或无记录时无须排序 */ i=PARTITION(R, s1, t1); /* 对Rs1Rt1作划分 */ QUICKSORT(R, s1, i-1); /* 递归处理左区间 */ QUICKSORT(R, i+1, t1); /* 递归处理右区间 */ /* QUICKSORT */ /*主函数*/void main()rectype Rsize;int i;/*插入排序*/printf(请输入使用插入算法排序的10个数据n);for(i=1;isize;i+)scanf(%d,&Ri.key );printf(n插入排序之前n);for(i=1;isize;i+)printf(%dt,Ri.key );INSERTSORT(R) ;printf(n插入排序之后n);for(i=1;isize;i+)printf(%dt,Ri.key );/*希尔排序*/printf(n请输入使用希尔算法排序的10个数据n);for(i=0;isize-1;i+)scanf(%d,&Ri.key );printf(n希尔排序之前n);for(i=0;isize-1;i+)printf(%dt,Ri.key );SHELLSORT(R,10);printf(n希尔排序之后n);for(i=0;isize-1;i+)printf(%dt,Ri.key );/*快速排序*/printf(请输入使用快速算法排序的10个数据n);for(i=1;isize;i+)scanf(%d,&Ri.key );printf(n快速排序之前n);for(i=1;isize;i+)printf(%dt,Ri.key );QUICKSORT(R,1,10) ;printf(n快速排序之后n);for(i=1;isize;i+)printf(%dt,Ri.key );
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!