


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验4快速排序一、 实验目的和要求1 在掌握各种排序方法的排序过程的基础上,完成快速排序算法程序设计。2 能够对排序算法进行基本的复杂度分析。二、实验内容排序就是把一组元素按照某个域的值的递增或递减的次序重新排列的过程。快速排序在待排序记录序列中任取一个记录作为枢轴,以它作为比较的“基准”,将待排序划分为左右两个子序列,使行左边子序列中记录的关键字均小于等于枢轴,右边子序列中各记录的关键字都大于等于枢轴。对所划分的两组分别重复上述过程,直到各个序列的记录个数为1时为止。快速排序函数原型QuickSort(SeqList sq)。设计一个算法,在顺序表存储结构上实现快速排序。排序数据为学生的考试
2、成绩单。成绩单由学生的学号、姓名和成绩组成,设计一个程序对给定的n个学生的成绩单按照名次列打印出每个学生的名次、学号、姓名和成绩。三、实验步骤1输入待排序的记录2. 对自定义记录类型重载比较运算符3 排序1)并选择第一个记录作为pivotkey记录2)从high指向的记录开始,向前找到第一个关键字的值小于Pivotkey的记录,将其放到low指向的位置,low+13).从low指向的记录开始,向后找到第一个关键字的值大于Pivotkey的记录,将其放到high指向的位置,high-14)重复2),3),直到low=high,将枢轴记录放在low(high)指向的位置 5)重复2),3),4),
3、直到整个记录有序为止6) 输出排序记录,完成比较。4. 附加要求:不采用运算法重载的方式,而是定义compare函数指针,通过传给quicksort函数指针,完成排序。四、实验提示算法实现:#include iostream.h#define MaxSize 100typedef int DataType;class CRecordpublic:int No;string name; int grade;Typdef CRecord DataType;class SeqListpublic: CRecord * data;int length;/创建顺序表Void SLCreat(SeqLis
4、t & sq); CRecord x; length = 0;cout sq.length;sq.data= new CRecordsq.length; cout 请输入数据元素值: no, , name grade ; for(int i = 0; i sq.datai.nosq .sq. dataigrade; /排序Void Sort( SeqList & sq ) SLCreat(sq); QuickSort(sq,0,sq.length);/快速排序void QuickSort(SeqList & sq, int low, int high) int pos; i
5、f(low high) pos = partition(sq,low, high); QuickSort(sq,low, pos-1); QuickSort(sq, pos+1, high); int partition(SeqList & list, int i, int j) DataType pivotkey; pivotkey = listi; while(i j) while(i = pivotkey) -j; if(i j) listi+ = listj; while(i j&listi = pivotkey) +i; if(i j) listj- = listi; listi = pivotkeyl return i;/将顺序表显示在屏幕上void SLPrint(SeqList & sq) cout 快速排序结果: for(int i = 0; i list.length; i+) coutisq.datai.nosq .sq. datai.gradeendl; cout
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国4色抱心小熊数据监测报告
- 2025年中国1178门锁数据监测报告
- 2025至2030年中国镀镍灯钩市场分析及竞争策略研究报告
- 2025至2030年中国金卤灯电感镇流器市场分析及竞争策略研究报告
- 2025至2030年中国西咪替丁胶囊市场分析及竞争策略研究报告
- 2025至2030年中国肉制品加工设备市场分析及竞争策略研究报告
- 2025至2030年中国电视遥控器架市场分析及竞争策略研究报告
- 2025至2030年中国燃油热水铸铁锅炉市场分析及竞争策略研究报告
- 2025至2030年中国活化去角质霜市场分析及竞争策略研究报告
- 2025至2030年中国楊贵妃工艺品市场分析及竞争策略研究报告
- 秩序安保维护服务 投标方案(技术方案)
- 中小学校长招聘考试试题
- 2023年陕西邮电职业技术学院教师招聘考试笔试题库及答案
- 化工企业适用-法律法规文件清单
- 工业催化原理及应用
- 国开2023春《语言学概论》形考任务1-3+大作业参考答案
- 公安院校及专业招生政审表
- 青少年体能训练计划方案
- 2023年公需课 大数据概述及基本概念考题
- 广东深圳红岭中学物理自主招生试卷
- 世界卫生组织生存质量测定简表(WHOQOL-BREF)
评论
0/150
提交评论