版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 算法分析与设计实验报告题目: 快速排序 姓名: 于文静 班级: 计科F1203 学号: 0 指导教师: 靳小波 完成时间: 2015-04-06 一、 实验题目用递归分治法编写Hoare快速排序算法二、 实验目的1. 理解时间复杂度的概念。 2. 深入地掌握C语言编程。 3. 通过编程直观地理解算法分析的意义三、 实验要求请使用递归分治法编写Hoare快速排序算法,算法的输入如下:7.30 7.15 4.27 2.14 6.29 3.99 0.26 9.10 1.89 2.86 0.44 5.52 4.35 4.39 6.70 9.82 3.55 2.38 9.12 3.54 1.30 5.
2、20 6.59 9.08 1.79 3.52 4.06 0.43 5.31 7.19 6.07 7.06 9.92 7.79 3.46 6.16 1.83 2.78 3.20 2.95 9.20 0.22 7.13 8.28 5.58 0.80 2.63 7.44 3.04 8.58 9.61 4.52 2.12 1.73 4.16 3.66 2.36 4.08 9.36 8.03 4.92 4.90 9.59 9.83 7.85 3.99 2.68 2.49 4.69 7.67 7.56 8.85 3.88 7.74 6.27 5.48 7.29 2.81 3.67 2.52 1.95 1.
3、82 4.38 4.42 5.54 4.41 1.94 0.31 8.41 5.69 4.59四、 程序流程图开始 将要排序的数据读入到文本文件中,再将文本文件中的内容写到数组a中,其中,变量cnt为数组a的长度; 对数组a进行一次划分,并定义变量i=low j=high,low和high分别为低地址和高地址;ij? N Yai=aj&ij? Nij? Y N j-; Yai与aj交换; i+;ai=aj&ij? N ij? Y N i+; aj与ai交换; j-; Y返回i的值;以ai为中间界值,递归调用quickSort函数,分别对ai左边和右边的数据进行快速排序;输出经过排序后数组a中的
4、内容; 结束五、 程序代码#includeint Partition(double a,int low,int high)int i,j;double temp;i=low;j=high;while(ij)while(ai=aj&ij)j-;if(ij)temp=ai;ai=aj;aj=temp;i+;while(ai=aj&ij)i+;if(ij)temp=ai;ai=aj;aj=temp;j-;return i;void quickSort(double a,int low,int high)int q; if(lowhigh)q=Partition(a,low,high); quickS
5、ort(a,low,q-1); quickSort(a,q+1,high);void main() FILE* file = NULL; int k,cnt;double a1000; if(file = fopen(input2.txt,r) = NULL)printf(the file does not exist.n);return;cnt = 0;while(!feof(file)fscanf(file,%lf,&acnt);cnt+;quickSort(a,0,cnt-1); for(k=0;kcnt;k+)printf(%.2f ,ak);六、 实验结果七、 实验体会通过本次实验,我了解到快速排序的基本思想,即通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的数据都小于等于某一个数,另一部分的数据都大于等于这个数,然后再用递归的思想分别对左右两部分的数据进行快速排序,从而使得整个序列都变得有序。像这种递归分治的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年及未来5年市场数据中国洗发沐浴行业市场深度研究及投资规划建议报告
- 新手美容师皮肤管理培训【课件文档】
- 2026年京津冀高精尖产业筑基工程项目揭榜申报指南
- 2026年统一市场基础制度规则执法监管
- 2026江西省民族宗教事务局招聘网络安全管理人员1人备考题库及完整答案详解【有一套】
- 2026春季中国工商银行广东省分行校园招聘600人备考题库含完整答案详解(夺冠系列)
- 大黄芒硝外敷促进产后切口愈合标准化操作指南
- 铁路道岔维修时使用的高效、安全、可靠盘扣式脚手架设计方案
- 职业因素与肺结节风险的相关性研究
- 新媒体运营推广策略与实战技巧
- 2025浙江杭州临安文商旅集团有限公司招聘工作人员4人笔试历年备考题库附带答案详解
- 2026四川巴中市通江县红峰国资本投资运营集团限公司公开招聘9人易考易错模拟试题(共500题)试卷后附参考答案
- 2026届湖北省武汉普通高中高三3月调考化学+答案
- 小儿肺炎救治管理培训措施
- 2026年安庆医药高等专科学校单招职业适应性测试题库含答案详解(b卷)
- 湖北省云学名校联盟2025届高三年级2月联考物理(含答案)
- 2026云南德宏州瑞丽市人民法院招聘聘用制书记员2人考试参考试题及答案解析
- 2026年春季小学湘美版(2024)二年级下册美术教学计划、教案及每课教学反思(附目录)
- 医疗器械经营质量管理体系文件(全套)
- 2025年常州纺织服装职业技术学院单招职业技能测试题库附答案解析
- 2026富民村镇银行春季招募笔试备考题库及答案解析
评论
0/150
提交评论