数据结构课程设计-希尔排序,冒泡排序,快速排序

数据结构课程设计-希尔排序,冒泡排序,快速排序

ID:35617468

大小:147.00 KB

页数:18页

时间:2019-04-02

数据结构课程设计-希尔排序,冒泡排序,快速排序_第1页
数据结构课程设计-希尔排序,冒泡排序,快速排序_第2页
数据结构课程设计-希尔排序,冒泡排序,快速排序_第3页
数据结构课程设计-希尔排序,冒泡排序,快速排序_第4页
数据结构课程设计-希尔排序,冒泡排序,快速排序_第5页
资源描述:

《数据结构课程设计-希尔排序,冒泡排序,快速排序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、重庆三峡学院数据结构课程设计设计说明书希尔排序,冒泡排序,快速排序学生姓名:*****学生学号:2009070142**指导教师:*****所在班级:09级电信2班成绩打分:信息与工程学院2011年6月25日重庆三峡学院课程设计任务书2010—2011学年第二学期专业:电子信息工程学号:姓名:课程设计名称:数据结构课程设计设计题目:简单数据的排序设计依据、要求及主要内容(可另加附页):要求:1.要有较好的界面,能够进行三种算法的选择。2.每一种算法要求有实现的过程,即能看到运行的步骤。3.对于同一组数据进行三种算

2、排序后,应给出相应的效率评估,确定最适合的算法。4.要求有良好的编程风格和注释。指导教师(签字):批准日期:年月日摘要本设计采用VC作为开发工具,通过希尔排序、冒泡排序与快速排序方法来实现一系列数据结构的排序工作。三种方法思路不同,方法各异,体现了排序的多样性。通过这次课程设计,使我们了解更多的排序知识,了解课设的有关程序过程,以掌握更多的排序方法。关键词:C语言;排序目录1课题描述……………………………………………………………………………。。。12逻辑设计…………………………………………………………………………

3、…23详细设计………………………………………………………………………………44程序代码……………………………………………………………………………65程序调试与测试………………………………………………………………………126总结……………………………………………………………………………………14参考文献………………………………………………………………………………151课题描述1.1课题的现实意义现实学习生活中,常会遇到一些数目较大数据繁杂的数值进行排序,徒手进行排序很困难,这时候我们就希望有一个小软件来帮忙,所以便

4、着手开发了这个对数据进行有序排序的程序,以便用于自己的学习工作。这些大大方便了我们的生活给我们更多的选择和实现方式。这个程序可以直接输入多个数据,不需要任何转换,就可以直接输出这些数据排序后的结果并输出移动的次数。并且从操作简单、界面清晰、灵活、实用、方便等要求出发,它所能完成的主要计算功能有以下几个方面:冒泡排序,快速排序,希尔排序。计算器的设计使我们所学到的c语言知识在现实中得到检验!信息时代是科技和经济发展的产物,软件产业是信息时代的产物,它在我们的生活工作中发挥着越来越大的作用,这个排序程序的设计对我们知

5、识的掌握有很大的作用,更能方便他人,可行性很强!1.2软件环境开发环境:visualc++6.0+WindowsXP操作系统2逻辑设计2.1总设计步骤总的设计过程不是很难,但是由于在编程过程中有的粗心大意,或是外部客观条件,造成了调试很多次。但最终在老师的帮助下完成了设计。第一、在纸上列出提纲,把具体大概的设计思路用伪代码写出。第二、编写代码,把各个函数分别编写出来,快速排序,冒泡排序,希尔排序……。第三、程序上机运行,查找错误。第四、错误代码的分析。查找原因。第五、调试。对于运行成功的代码进行测试,看是否符合题

6、目要求。使用多组数据进行测试。直至不存在着偶然性。第五、总结。过程当中有许多库函数的调用,使用过程中让我们对C语言函数的深刻了解。第六、编写报告书。编写报告书的过程有些复杂,由于在实践过程当中的每一步都要用再次的实现,并用书面报告提交。但是这个充分的是我们对这个编程的理解。2.2三个主要函数的设计原理:(1)快速排序基本思路:通过一次分割,将无序序列分成两部分,其中一部分的元素值均不大于后一部分的元素值。然后用同样的方法对每一部分进行分割,一直到每一个子序列的长度小于或等于1为止。15具体过程:设序列P进行分割。

7、首先,从第一个、中间一个、最后一个元素中选出中项,设为P[k],并将P[k]赋给t,再将序列中的第一个元素移到P[k]的位置上。然后,再设两个指针i、j分别指向起始和最后位置上:(1)将i逐渐增大,与此同时比较P[i]与t的大小,直到发现P[i]>t,将P[i]移到P[j]的位置上;(2)将j逐渐减小,与此同时比较P[j]与t的大小,直到发现P[j]

8、对尚未排序的各元素从头到尾依次依次比较相邻的两个元素是否逆序(与欲排顺序相反),若逆序就交换这两元素,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有N个元素,那么一共要进行n-1轮比较,第I轮要进行j=n-i次比较。(如:有5个元素,则要进行5-1轮比较。第3轮则要进行5-3次比较)(3

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。