- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
成 绩 评 定 表
学生姓名
吴琼
班级学号
专 业
通信工程
课程设计题目
基于选择排序方法的类模板设计与实现
评
语
组长签字:
成绩
日期
20 年 月 日
课程设计任务书
学 院
信息科学与工程
专 业
通信工程
学生姓名
吴琼
班级学号
课程设计题目
基于选择排序方法的类模板设计与实现
实践教学要求与任务
建立一维数组数据结构的模板类,使一维数组中的数据元素可以是char, int, float等多种数据类型,并对数组元素实现选择类排序。主要完成如下功能:
(1) 实现数组数据的输入和输出;
(2) 实现简单选择排序功能;
(3) 实现树形选择排序功能;
(4) 实现堆排序功能;
(5) 将每种排序功能作为类的成员函数实现,编写主函数测试上述排序功能。
工作计划与进度安排
第17周:分析题目,查阅课题相关资料,进行类设计、算法设计;
第18周:程序的设计、调试与实现;
第19周:程序测试与分析,撰写课程设计报告,进行答辩验收。
指导教师:
201 年 月 日
专业负责人:
201 年 月 日
学院教学副院长:
201 年 月 日
摘 要
计算机中存储的数据,初始时没有任何排列规律,根据实际需求,经常要排列成有规律的数据序列也就是将数据序列按关键字升序或降序规律排列。
选择排序是排序法中很经典的算法,选择排序法可以分为简单选择排序、树形选择排序和堆排序。
本文采用C++语言实现了选择排序功能,设计了模板类,实现了int型float型和char型数组的排序,设计了简单选择排序、树形选择排序和堆排序的三个函数体,采用Visual C++ 6.0的控制台工程和MFC工程分别实现了各类型数组的排序,通过对两种程序的测试结果表明:简单选择排序是选择排序的基础,而树形选择排序和堆排序是简单选择排序的改进。
关键词:模板类;简单选择排序;树形选择排序;堆排序;控制台工程;MFC工程。
目 录
TOC \o 1-3 \h \z \u 1 需求分析 1
2 算法基本原理 1
3 类设计 3
4 基于控制台的应用程序 3
4.1 类的接口设计 4
4.2 类的实现 4
4.3 主函数设计 9
4.4 基于控制台的应用程序测试 11
5 基于MFC的应用程序 13
5.1 基于MFC的应用程序设计 13
5.1.1 MFC程序界面设计 13
5.1.2 MFC程序代码设计 15
5.2基于MFC的应用程序测试 21
结 论 22
参考文献 23
PAGE
PAGE 22
1 需求分析
(1)当进行数据处理时,经常遇到需要进行查找操作,通常希望待处理的数据按关键字大小有序排序,因为这样就可以采用查找效率较高的查找算法。
(2)对有序的顺序表可以采用查找效率较高的折半查找算法,而对无序的
顺序表只能采用顺序查找算法。由此可见排序是计算机程序设计中一种基础性操
作,研究和掌握各种排序方法是非常重要的。
(3)排序算法对于计算机信息处理很重要,一个好的排序不仅可以使信息 查找的效率提高,而且直接影响着计算机的工作效率。
本实验题目为基于选择排序方法的类模板设计与实现,要求建立一维数组数据结构的模板类,使一维数组中的数据元素可以是char, int, float等多种数据类型,并对数组元素实现选择类排序。因此实验采用类模板,可以对不同的数据类型的数据进行排序,并通过函数采用不同的方法进行排序。
2 算法基本原理
(1)简单选择排序
从无序的记录序列中选出一个关键字值最小的记录存入到指定的位置。
//简单选择排序
SelectSort(Type ar[])
{
int i,j;
Type t;
for(i=1;ilen;i++)
for(j=i+1;j=len;j++)
if(array[i]array[j])
{t=array[i];array[i]=array[j];array[j]=t;}
}
(2)树形选择排序
树形选择排序的基本思想:树形选择排序又称锦标赛排序(Tournament Sort),是一种按照锦标赛的思想进行选择排序的方法。首先对n个记录的关键字进行两两比较,然后在n/2个较小者之间再进行两两比较,如此重复,直至选出最小的记录为止。
(3).堆排序
堆排序由建初始堆和调整堆两个过程组成。再次,所谓筛选是指对一棵左右子树均为堆的完全二叉树,经调整根节点后使之成为堆的过程。建堆时一定要从最后一个非叶子结点开始。
堆排序的关键是调整堆,建初始堆时也是要从最后一个
您可能关注的文档
- 2011年中考语文一轮专题复习:散文阅读.doc
- 【2012公考行测高分宝典】逻辑推理专项训练题及解析(完美打印版).doc
- 125条常见的java面试笔试题大汇总.doc
- 2008年福州一中升高中对外自主招生物理化学综合试题含答案.doc
- 10[1].1-计算机网络管理员国家职业标准_-2006.doc
- 【2017年整理】第三章 植物的磷素营养与磷肥.doc
- 【最新精选】柑桔完熟栽培项目可行性研究报告.doc
- 2012大连工业大学艺术与信息工程学院第本科教学质量报告.doc
- 2011.12计算机基础试题不带样图16K.doc
- 2011年执业药师考试内容及答题技巧(药物化学).doc
- 2025及以后5年中国人工授精耗材市场运行格局及投资战略研究报告.docx
- 2025及以后5年中国人工心脏瓣膜和和人工心脏瓣膜行业市场发展趋势与前景展望战略分析报告.docx
- 2025及以后5年中国人工智能医学影像企业发展报告.docx
- 耳鼻喉科诊疗技术与进展.pptx
- 2025及以后5年中国人力资源服务行业市场行情动态研究报告.docx
- 2025及以后5年中国人力资源派遣市场研究与投资战略研究报告.docx
- 2025及以后5年中国人力资源派遣市场研究与市场供需预测报告.docx
- 2025年最新安全用药考试题及答案.doc
- 2026年临沂职业学院单招《数学》每日一练试卷附参考答案详解(培优A卷).docx
- 2026年柳州城市职业学院单招《数学》考前冲刺练习附参考答案详解(巩固).docx
最近下载
- 景观照明设施养护投标方案技术标.docx
- 广东省江门市第一中学2024-2025学年高一上学期第二次月考物理试题(含答案).pdf VIP
- 矿山机械与智能化技术 课件全套 马立峰 第1--8章 绪论---智慧矿山的关键技术及展望.pptx
- 卒中患者吞咽障碍护理规范.docx VIP
- 矿山机械与智能化技术 课件 第1章 绪论 .pptx
- 慎独班会课件PPT.pptx VIP
- DB11T2382-2024 建设工程施工消耗量标准.pdf VIP
- 混合精度稀疏矩阵加速计算脉动阵列架构及数据处理方法.pdf VIP
- 《商业模式》练习题及答案.docx VIP
- 人教版2024四年级上册英语 Unit 5 The weather and us A 第3课时 课件.pptx VIP
原创力文档


文档评论(0)