全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法分析与设计实验日志指导教师 代宇 实验时间: 2010 年10月19日学院 计算机 专业 计算机科学与技术 班级 0410801 学号 08500329 姓名 雷雷 实验室 S308 实验题目:分治法实验目的:1 掌握分治法思想;2 熟练运用分治法解决相应的问题。实验要求:3 写一个“由底向上”的归并分类排序算法。4 用快速分类算法对10个数(键盘输入)进行从大到小或从小到大的排列并输出结果。实验主要步骤:第一题:#include#includeusing namespace std;void combine(int *,int,int,int);void mergesort(int *sortarray,int low,int high)int k=(low+high)/2;if(lowk和k+1-high这两段合并到low到high/把有序的两段数组合并为一段数组,并使合并这段数组同样有序void combine(int *sortarray,int low,int k,int high)vector temp(high-low+1,0); /temp是辅助存储数组,辅助存储当前排好序的状态int i,j,p;i=low;/控制前半段下标移动j=k+1;/控制后半段下标移动p=0; /控制temp的小标移动while(i=k&j=high)/但前半段或者后半段的数全部排好序(放入temp数组)时退出if(*(sortarray+i)*(sortarray+j) /从小到大排序tempp=*(sortarray+i);i+;elsetempp=*(sortarray+j);j+;p+;/把前半段没有排好序的数排序,放入temp数组while(ihigh)tempp=*(sortarray+i);i+;p+;/把后半段没有排好序的数排序,放入temp数组while(jk)tempp=*(sortarray+j);j+;p+;/把temp数组中的数拷贝会需要排序的数组,完成归并for(i=0;ihigh-low+1;i+)*(sortarray+low+i)=tempi;int main()int sortarray10=0;int num,low,high;/num是需要排序的个数,low和high控制排序的数据段int i=0;/freopen(stdin.txt,r,stdin);coutnum;for(i=1;i=num;i+)cout请输入数:*(sortarray+i);cout输入最小最大的个数:lowhigh;cout初始数据为:endl;for(i=1;i=num;i+)cout*(sortarray+i) ;coutendl;/进行归并排序mergesort(sortarray,low,high);cout从小到大排序后的数据为:endl;for(i=1;i=num;i+)cout*(sortarray+i) ;coutendl;return 0;、第二题:#include#include#includeQuickSort.husing namespace std;int main()int n;cout请输入你要排序的个数:n;vector a(n+1,0); cout请输入数:endl; for(int i=1;iai;cout由小到大排序结果为:endl;quicksort sorta(a);sorta.show();return 0;#ifndef QUICKSORT_H#define QUICKSORT_H#includeusing namespace std;class quicksortprivate:vector &sortarray;int partition(int low,int high)sortarray0=sortarraylow;while(lowhigh)while(low=sortarray0)high-;sortarraylow=sortarrayhigh;while(lowhigh&sortarraylow=sortarray0)low+;sortarrayhigh=sortarraylow;sortarraylow=sortarray0;return low;void qsort(int low,int high)if(lowhigh)sortarray0=partition(low,high);qsort(low,sortarray0-1);qsort(sortarray0+1,high);public:quicksort(vector &sortarr):sortarray(sortarr)qsort(1,sortarray.size()-1);void show()for(int i=1;isortarray.size();i+)if(i=sortarray.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 薯、豆相关植物加工品项目市场研究报告及运营管理方案|瑞克咨询|2024年编|
- 冷链装备项目市场研究报告及运营管理方案|瑞克咨询|2024年编|
- 石油、化工产品批发服务项目可行性研究报告及运营方案|瑞克咨询|2024年编|
- 2024年技术监督质检职业技能考试-质量通道任职资格笔试参考题库含答案
- 2024年建筑水利市政公路三类人员-宁夏建筑三类人员笔试参考题库含答案
- 2024年岗位知识竞赛-物业管理知识竞赛笔试参考题库含答案
- 2024年山东住院医师-山东住院医师眼科笔试参考题库含答案
- 2024年安全知识安全生产知识竞赛-学规懂规践规知识笔试参考题库含答案
- 2024年大学试题(财经商贸)-行业会计比较笔试参考题库含答案
- 企业人力资源管理师之三级人力资源管理师全真模拟考试试卷A卷含答案
- [高等教育]同济大学钢结构基本原理沉祖炎课后习题答案完全版
- 抗拉强度与硬度对照表全面.doc
- 人教版八年级语文下册《录短语结构类型表》研讨课教案_23
- 电子企业FPC品质检验标准及管控要求
- 机加工安全事故案例分析(经典实用)
- 电气人防图集07FD02
- 基金公司组织架构和职能部门职责
- 农村宅基地管理制度改革试点方案参考范文(参考四)
- (完整版)月相变化练习(含答案)(最新整理)
- 超详细年度工作计划表Excel模板
- 劳动节介绍ppt课件
评论
0/150
提交评论