欢迎来到天天文库
浏览记录
ID:15321088
大小:388.50 KB
页数:18页
时间:2018-08-02
《排序系统详细设计说明书_new》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、排序系统软件详细设计说明书文档编号密级SORT0003内部公开文档版本Totalpages共_20_页1.0排序系统详细设计说明书拟制关振兴日期2010-4-28评审人日期批准日期第18页,共18页排序系统软件详细设计说明书RevisionRecord修订记录日期修订版本修改章节修改描述作者2010-4-281.0初稿完成关振兴第18页,共18页排序系统软件详细设计说明书目录1排序系统简介51.1文档编写目的51.2文档编写背景51.3文档适用范围51.4术语和缩略语61.5排序系统时序图61.6排序系统时序图61.7排序系统活动图71.8排序系统活动图描述
2、72排序算法设计82.1算法的数据类型82.2算法详解82.3算法性能效率比较103排序系统模块概述113.1类图113.2类的成员方法134参考文献185附录18第18页,共18页排序系统软件详细设计说明书1排序系统简介1.1文档编写目的编写本文档的目的是为了软件开发者对排序系统的运行环境、功能和性能有一个共同的理解,使本软件设计说明文档成为整个软件开发过程的指导,为编码提供方向和依据。为快速的将数据进行排序,我们设计了排序系统,来帮助用户对用户想排序的数据进行排序。1.2文档编写背景本软件设计说明书是在《排序系统软件需求规格说明书》基础上编写的,完成需求
3、分析、软件基础模块功能、排序系统设计制作,急需为开发人员的需求提供相应系统设计说明,以供进一步的修改。也为软件开发与测试人员提供排序系统的整体框架,便于进一步设计开发。1.3文档适用范围本文档适用于开发人员。l软件名称本系统英文名称:SortSystem本系统英文简称:SS本系统中文名称:排序系统l软件功能参见《排序系统软件需求规格说明书》l软件应用参见《排序系统软件需求规格说明书》第18页,共18页排序系统软件详细设计说明书1.1术语和缩略语排序:将一组“无序”的记录序列调整为“有序”的记录序列。1.2排序系统时序图图一系统时序图1.3排序系统时序图lge
4、tType是一个对象,用来获取用户选择的数据类型。同时,该对象会对选择进行判断,返回判断信息。lgetData是一个对象,用来获取用户选择的排序数据。同时,该对象会对数据进行判断并返回判断信息。lsort是排序的对象,该对象负责对数据进行排序。并调用printResult()方法。lprintResult()方法被sort对象调用,向用户返回排序结果。第18页,共18页排序系统软件详细设计说明书1.1排序系统活动图图一系统活动图1.2排序系统活动图描述l程序启动。l系统接收用户输入的数据类型的代号。l系统验证用户输入的代号是否合法。合法则执行下一步,非法则返
5、回重新接收输入。l系统接收用户输入的要排序的数据。第18页,共18页排序系统软件详细设计说明书l系统验证用户输入的要排序的数据是否合法,合法则执行下一步,非法则返回重新接收输入。l系统接收用户输入的要使用的排序算法的代号。l系统验证用户输入的代号是否合法,合法则执行下一步,非法则返回重新接收输入。l系统执行排序算法。l程序结束。1排序算法设计1.1算法的数据类型数据类型说明整型(int类型)基本数据类型,在内存中占4个字节(32位)取值范围为-2³¹~2³¹-1字符串(String类型)字符串是常量;它们的值在创建之后不能更改。1.2算法详解3.2.1希尔排
6、序基本思想首先将待排序的元素分为多个子序列,使得每个子序列的元素个数相对较少,对各个子序列分别进行直接插入排序,待整个待排序序列“基本有序”后,再对所有元素进行一次直接插入排序。性能希尔排序比冒泡排序快5倍,比插入排序大致快2倍。希尔排序比起快速排序慢很多。但是它相对比较简单,它适合于数据量在5000以下并且速度并不是特别重要的场合。它对于数据量较小的数列重复排序是非常好的第18页,共18页排序系统软件详细设计说明书3.2.2直接插入排序基本思想每次将一个待排序的数据元素,插入到前面已经排好序的数列中的适当位置,使数列依然有序;直到待排序数据元素全部插入完为
7、止。性能空间效率:仅用了一个辅助单元。时间效率:向有序表中逐个插入记录的操作,进行了n-1趟,每趟操作分为比较关键码和移动记录,而比较的次数和移动记录的次数取决于待排序列按关键码的初始排列。最好情况下:即待排序列已按关键码有序,每趟操作只需1次比较2次移动。总比较次数:n-1次。总移动次数:2(n-1)次。最坏情况下:即第j趟操作,插入记录需要同前面的j个记录进行j次关键码比较,移动记录的次数为j+2次。平均情况下:即第j趟操作,插入记录大约同前面的j/2个记录进行关键码比较,移动记录的次数为j/2+2次。由此,直接插入排序的时间复杂度为O(n2)。是一个稳
8、定的排序方法。3.2.3冒泡排序基本思想设数组中存放
此文档下载收益归作者所有