- 1
- 0
- 约 26页
- 2017-03-26 发布于江苏
- 举报
基于选择排法的类模板研究设计书与实现C课程研究设计书
成 绩 评 定 表
学生姓名 吴琼 班级学号 专 业 通信工程 课程设计题目 基于选择排序方法的类模板设计与实现 评
语
组长签字:
成绩
日期
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工程。
目 录
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
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).堆排序
堆排序由建初始堆和调整堆两个过程组成。再次,所谓筛选是指对一棵左右子树均为堆的完全二叉树,经调整根节点后使之成为堆的过程。建堆时一定要从最后一个非叶子结点开始。
堆排序的关键是调整堆,建初始堆时也是要从最后一个非叶子结点开始向根结点方向进行调整建堆。假设完全二叉树的第i个结点的左子树,右子树已是堆,则对第i个结
您可能关注的文档
- 基于组态王液体控制系统研究设计书课题.doc
- 基于无线传网络的智能家居系统的研究设计书优秀课题研究设计书.doc
- 基于组态软嵌入数据库的研究设计书思考.doc
- 基于组态软的多级带机PLC控制系统研究设计书可行性研究设计书研究.doc
- 基于组策略用户理平台本科思考.doc
- 基于纹理信息的高分辨率无人机遥感图像分割最终文案文档.doc
- 基于统计分理论的肉产量及价格指数预测可研性.doc
- 基于统计征的不长间歇过程故障诊断研究本科深刻.doc
- 基于组态软和PL的火电厂给煤控制系统研究设计书可行性研究设计书148868760.doc
- 基于组态软和PL的火电厂给煤控制系统研究设计书可行性研究设计书.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 05G359-3悬挂运输设备轨道标准图集.pdf VIP
- 新学期教师培训会,校长发言:明边界守初心,知尺度有温度,让教育履职既合规又暖心.doc VIP
- 湖南省长沙市第一中学2024-2025学年高二上学期语文1月期末考试试卷(含答案).pdf VIP
- 2025年秋季学期学校全面工作计划.doc VIP
- T∕CHAS 10-2-22-2023 中国医院质量安全管理 第2-22部分:患者服务 疼痛治疗.pdf
- T_CNFMA B036-2024 户外林业机械 以锂离子电池为动力源的步进式松土机.pdf VIP
- T_CCTAS 237-2025 城市轨道交通市域快线车辆运营技术规范.pdf VIP
- 广告策划与创意(第2版):网络广告创意PPT教学课件.pptx
- 人体解剖学试题及答案.docx VIP
- 最后倒计时最后倒数(The Final Countdown) 高清钢琴谱五线谱.doc VIP
原创力文档

文档评论(0)