当前位置:文档之家› 排序算法的实现与演示需求分析报告

排序算法的实现与演示需求分析报告







课程设计题目:排序算法实现与演示系统专业:计算机科学与技术
班级:
姓名:
一.问题的提出
1.1编写目的
排序在人们的日常生活和学习、科研、生产等各个方面有着重要的应用。

因此掌握常用的排序算法是很必要的。

此次设计拟开发一个排序算法演示系统,以提高对排序算法的掌握程度。

本系统实现各种内部排序:直接插入排序、冒泡排序、直接选择排序、希尔排序、快速排序、堆排序、归并排序演。

用户可以选择排序算法以演示输入数据在该排序算法下的排序过程。

1.2项目背景
课程设计题目:排序算法实现与演示系统
本课题的指导老师:
本课题的任务开发者:
该设计系统与其他系统的关系:相辅相成,紧密相关
1.3定义
文档中所用到的专业术语:
1.4参考资料
[1] 李云清,杨庆红.数据结构(C语言版).北京:人民邮电出版社,2004.
[2]严蔚敏,吴伟民.数据结构(C语言版).北京:清华大学出版.1997.
[3] 苏光奎,李春葆.数据结构导学.北京:清华大学出版.2002.
[4] 周海英,马巧梅,靳雁霞.数据结构与算法设计.北京:国防工业出版社,2007.
[5] 张海藩. 软件工程导论. 北京:清华大学出版社.2003.
随着计算机的普及,数据结构的应用与开发也深入我们的生活学习当中,其中排序算法也影响极深,通过这次排序算法的实现,希望更多人可以学会并运用排序算法。

二.任务概述
2.1目标
了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;
初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;
提高综合运用所学的理论知识和方法独立分析和解决问题的能力;
训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。

2.2运行环境
Microsoft Visual C++ 2008
2.3用户的特点
排序算法实现与演示系统使用者:具有一定的计算机操作能力和知识。

系统调用人员:具有很高的专业知识水平,理解排序算法实现与演示系统的运行机制,可以对开放代码进行阅读和分析,以完成其系统独特的需求。

2.4条件与限制
课程设计代码编写测试时间短、技术力量弱,设备具有约束性。

三.数据描述
3.1静态数据
输入的数据
3.2动态数据
输入(scanf)数据:输入所需排序方式的序号;输入排序数据的个数;输
入具体的数据元素。

输出(printf)数据:输出排序每一趟的结果,及最后排序结果。

四、操作流程图
五. 系统用例图
5.1构建用例图
排序算法演示
5.2 细化用例图
将用例细化可得到分解的用例:
将“排序演示”用例分解为:
A:选择排序算法从界面上选择要进行排序的排序算法
B:确定数据移动顺序根据选择的排序算法确定数据移动顺序 C: 演示排序过程显示选择的排序算法对输入数据的排序过程和排序算法代码
排序算法演示
六、需求规定
6.1基本要求
通过用户键入的数据,经过程序进行排序,最后给予数据由小到大的输出。

排序的方式包含教材中所介绍的几种常用的排序方式:直接插入排序、折半插入排序、冒泡排序、快速排序、选择排序、堆排序、归并排序。

每种排序过程中均显示每一趟排序的细节。

6.2设计工作任务及工作量要求
1)选择合适的数据结构,并定义数据结构的结构体;
2)根据程序所要完成的基本要求和程序实现提示,设计出完整的算法;
3)按组讨论、确定设计方案,确定程序模块,并进行明确分工;
4)写出课程设计说明书
6.3运行要求
用户界面:系统采用对话框方式,多功能窗口运行。

硬件接口:支持各种X86系列的PC机。

软件接口:运行于Windows2000及更高版本的具有WIN32 API的操作系统之上。

故障处理:正常使用时不出错,对于用户的输入错误给出适当的改正提示信息,遇不可恢复的系统错误时,保证数据库的完好无损。

6.4功能需求
6.5其他需求
能快速恢复系统和故障处理,方便系统升级和扩充,故障恢复时间不超过5小时。

系统在用户不合理的操作或输入情况下,必须能够继续正常运行,并给出错误信息。

系统周期进行数据库文件的信息备份,同时要对数据库文件的意外损害进行一定的检测。

由于系统支持多用户使用,所以系统将提供用户权限管理和信息保密功能。

相关主题