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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

需求分析报告

排序算法的实现与演示系统

班级10060342X 第

十组

姓名崔杰43 郭伟

51 刘文忠50

付耀萱48 一.问题的提出

1.1 概述排序在人们的日常生活和学习、科研、生产等各个方面有着重要的应用。因此掌握常用的排序算法是很必要的。此次设计拟开发一个排序算法演示系统,以提高对排序算法的掌握程度。

本系统实现八种不同排序算法即:快速排序、冒泡排序、堆排序、直接插入排序、希尔

排序、直接选择排序、归并排序、基数排序的排序演示。用户可以选择排序算法以演示输入数据在该排序算法下的排序过程。

1.2 设计的意义随着计算机技术的发展,各种排序算法不断的被提出。排序算法在计算机科学中有非常重要的意义,且应用很广泛。在以后的发展中排序对我们的学习和

生活的影响会逐渐增大,很有必要学习排序知识。因此此次毕业设计一方面使自己掌握排序的知识,另一方面锻炼一下独立开发系统的能力。

二.设计目的内容和要求

2.1 设计的目的《数据结构》课程主要介绍最常用的数据结构,阐明各种数据结构内在的逻辑关系,讨论其在计算机中的存储表示,以及在其上进行各种运算时的实现算法,并对算法的效率进行简单的分析和讨论。进行数据结构课程设计要达到以下目的:

1.了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能

力;

2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;

3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;

4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所

应具备的科学的工作方法和作风。

2.2设计内容和要求

设计内容:

1.实现各种内部排序。包括直接插入排序,冒泡排序,直接选择排序,希尔排序,快速排序,堆排序,归并排序。

2.待排序的元素的关键字为整数或(字符)。可用随机数据和用户输入数据

作测试比较。比较的指标为有关键字参加的比较次数和关键字的移动次数(关键

字交换以3次计)。

3.演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标值的列表,以便

比较各种排序的优劣。

设计要求:

1.符合课题要求,实现相应功能;

2.要求界面友好美观,操作方便易行;

3.注意程序的实用性、安全性;

1.3术语

三•操作流程图

用户

■ 卜要求演示■启动系统

输入数据选择算法

排序演示显示排序算法代码

结束

四.设计工作任务及工作量要求

1)选择合适的数据结构,并定义数据结构的结构体;

2)根据程序所要完成的基本要求和程序实现提示,设计出完整的算法;

3)按组讨论、确定设计方案,确定程序模块,并进行明确分工;

4)写出课程设计说明书

五.系统用例图

5.1功能需求

非法的数据

正确的输入值

排序运算5.2构建用例图

排序算法演示

输入数据

5.2细化用例图

将用例细化可得到分解的用例:

将“排序演示”用例分解为:

A:选择排序算法从界面上选择要进行排序的排序算法

B:确定数据移动顺序根据选择的排序算法确定数据移动顺序C:演示排序过程显示选择的排序算法对输入数据的排序过程和排序算

法代码

排序算法演示

相关文档
最新文档