1 / 17
文档名称:

冒泡法与选择法排序效率比较.doc

格式:doc   大小:67KB   页数:17页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

冒泡法与选择法排序效率比较.doc

上传人:平平 2021/6/30 文件大小:67 KB

下载得到文件列表

冒泡法与选择法排序效率比较.doc

文档介绍

文档介绍:冒泡法与选择法排序效率比较
课程设计
学 号
班 级
姓 名
指导教师
2008年 3月 7 日
课程设计任务书
一、课程设计题目: 冒泡法与选择法排序效率比较
二、课程设计工作自2008年3月3日至2008年3月10日止
三、课程设计内容:
用C语言编写软件完成一下任务:
比较“冒泡排序”和“选择排序”两种排序方法。完成同样的工作,一个算法的时间效率越高(使用的时间越少),越容易受欢迎。假设算法的时间主要消耗在两个方面:赋值运算,比较运算。请用程序读取给定的数据(,由教师提供)后,分别使用“冒泡排序”和“选择排序”两种方法进行排序,并分别统计出各自需要的“赋值运算次数”和“比较运算次数”,从而对它们的时间效率进行初步评价。
四、课程设计要求
1. 程序质量:
贯彻结构化的程序设计思想。
用户界面友好,功能明确,操作方便。
用户界面中的菜单至少应包括“读取数据”、“冒泡法排序”、“选择法排序”、“退出”4项。
代码应适当缩进,并给出必要的注释,以增强程序的可读性。
2. 课程设计说明书:
课程结束后,上交课程设计说明书(打印稿和电子稿),其内容下:
封面
课程设计任务书
目录
需求分析(分析题目的要求)
程序流程图(总体流程图和主要功能模块流程图)
核心技术的实现说明及相应程序段
个人总结
参考资料
源程序及适当的注释
指导教师:————
学生签名:________
目录
一、需求分析 1
二、程序流程图 1
三、核心技术的实现说明及相应程序段 4
四、个人总结 7
五、参考文献 8
六、源程序 8
一、需求分析
经过对程序题目的分析可知,整个程序分为四大部分。每一部分对应一个函数。它们的功能分别是:文件装载(read);冒泡法排序(maopao);选择法排序(xuanze);效率比较主函数(main)。
文件装载函数 实现装载所给文件,读取文件所给数值。
冒泡法排序函数 主要实现数据的冒泡法排序和赋值运算与比较运算的次数。
选择法排序函数 主要实现数据的选择法排序和赋值运算与比较运算的次数。
效率比较主函数 实现冒跑法排序与选择法排序效率比较 与界面显示。
二、程序流程图
1、冒泡排序法流程图
定义int i,j,t,a=0,b=0;
当j=0~8
当i=0~9-j
if(stud[i].num < stud[i+1].num])
是 否
交换stud[i].num < stud[i+1].num
a+3,b+1
输出冒泡法:赋值运算a次,比较运算b次
反还a+b
2、选择法排序流程图
定义int i,j,t,a=0,b=0,num=0;
当j=10~1
min=i;a++
当i=0~j
if(stud[i].num<stud[min].num)
是 否
min=i;交换stud[i].num和
stud[min].num,a+4,b+1
输出选择法:赋值运算a次,比较运算b次
反回a+b
3、文件装载流程图
for(i=0;i<10;i++)
读取std[i]
关闭文件
4、排序效率比较模块的流程图
b<s&&b!=0&&s!=0
是 否
输出 b>s&&b!=0&&s!=0
冒泡排序法效率高 是 否
输出 输出
选择排序法效率高 请先运行两种排序方法
三、核心技术的实现说明及相应程序段
本程序主要由三个自定义函数和一个主函数组成,其中主函数以菜单形式调用三个自定义函数来实现所有功能。其中冒泡法排序函数与选择法排序函数是核心部分。现