冒泡排序选择排序等.docx

上传人:b****6 文档编号:8113429 上传时间:2023-01-28 格式:DOCX 页数:9 大小:384.17KB
下载 相关 举报
冒泡排序选择排序等.docx_第1页
第1页 / 共9页
冒泡排序选择排序等.docx_第2页
第2页 / 共9页
冒泡排序选择排序等.docx_第3页
第3页 / 共9页
冒泡排序选择排序等.docx_第4页
第4页 / 共9页
冒泡排序选择排序等.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

冒泡排序选择排序等.docx

《冒泡排序选择排序等.docx》由会员分享,可在线阅读,更多相关《冒泡排序选择排序等.docx(9页珍藏版)》请在冰豆网上搜索。

冒泡排序选择排序等.docx

冒泡排序选择排序等

 

长春理工大学

学生实习报告

2010~2011学年第一学期

 

实习类别:

软件算法设计

学院:

软件学院

专业:

网络工程

班级:

0913211

姓名:

李皓楠

 

2011年12月30日

起止周

17~18

周数

2

实习地点

软件学院专业实验室

实习目的:

对起泡排序、直接排序、简单选择排序、快速排序、希尔排序、堆排序算法进行比较,用数据和图形表示结果。

实习要求:

(1)对起泡排序、直接排序、简单选择排序、快速排序、希尔排序、堆排序算法进行比较;

(2)待排序的元素的关键字为整数。

其中的数据要用伪随机产生程序产生(如10000个),至少用5组不同的输入数据做比较,再使用各种算法对其进行排序,记录其排序时间,再汇总比较。

(3)演示程序以人机对话的形式进行。

每次测试完毕显示各种比较指标值的列表,用饼图或条形图进行表示,以便比较各种排序的优劣。

(4)界面友好,易与操作。

采用菜单方式进行选择。

实习进度安排及主要内容:

第一周:

熟悉程序要求,设计程序,画流程图,设计模块实现,查找资料,对困难部分求解。

第二周:

写代码,调试程序,写实验报告。

 

成绩:

指导教师/带队教师(签字)

 

年月日

一、需求分析

在主程序中用无现循环实现一个菜单输入,不同选择,对各种排序测试排序时间,移动次数和比较次数,用表格和条形图的形式进行直观呈现。

二、算法的基本思想

1.模块调用关系

 

画表模块

程序流程图:

 

算法的主要思路是:

在主程序中实现一个菜单,用户可以输入选项,选择不同的操作,实现不同的操作:

1.基本思路:

(1)程序开始时生成10000个随机数

(2)显示菜单并等待输入选项

(3)若输入非菜单选项,则提示出错并重新输入

(4)若输入菜单选项,则执行相应的模块并显示结果

(5)提示用户是否继续,是,则循环,否,则结束

2.函数dodraw(inta)用来显示条形图,基本思路:

(1)a用来表示画的是时间图,移动次数图还是比较次数图有0,1,2三种选择

(2)dodraw调用draw()函数画出条状

voiddodraw(inta){}

voiddrawl(doublept,inta){}

3.函数voiddomany(SqList*s)用来实现对各种排序的五次测试,并对数据进行汇总处理

基本思路如下:

.

(1)对各种排序进行5次循环调用,累加其排序时间,移动次数,比较次数。

(2)对排序时间,移动次数,比较次数进行处理,得出平均一次排序的数据

(3)调用画图,画表函数

三、测试数据

程序运行实例如下:

程序开始时的画面:

 

选择菜单1:

 

如果按y键则继续循环按n键则退成,其他提示错误:

 

菜单7为使用一组数据测试,8为使用5组数据进行测试

使用表格表示的结果

 

各种排序时间占用比例图:

 

比较次数比例图:

移动次数比例图:

 

三、系统文件使用说明

打开程序,根据提示输入菜单选项,没有的提示出错,重新输入,查看结果,然后按y键继续测试,按n键退出,其他键提示出错。

四、心得体会

通过这次课程设计,我感觉自己的编程水平还有待提高,以前学的知识有的已经遗忘,新学的又不是很熟,用起来很费力气,以后经常编程时必须的,同时我感觉程序设计语言都是相通的,最重要的还是思想,当然只有基础打好了,思想才有发挥的余地。

六、参考文献

1.《数据结构(C语言版)》严蔚敏,吴伟民清华大学出版社第十章

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 法学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1