数据结构课程设计 下载本文

[键入公司名称]

计算机学院课程设计顺序表算法功能的演示

[键入作者姓名]2015/12/31

目录

一、 二、 三、 四、 五、

需求分析 ........................................................................................................................... 2 设计说明 ........................................................................................................................... 2 上机结果及体会 ............................................................................................................... 6 参考文献 ........................................................................................................................... 7 附录 ................................................................................................................................... 7

1

一、 需求分析

1. 运行环境(软、硬件环境)

软件:Windows cmd命令行 硬件:普通PC 2. 程序所实现的功能

顺序表算法功能的演示 包括以下功能 1) 创建顺序表

2) 读取指定位置元素

3) 在指定位置之前插入元素 4) 删除指定位置元素 5) 查找一个元素 6) 查找重复元素

7) 删除一个指定值的元素 8) 删除重复元素 9) 将顺序表逆置 10) 退出程序

3. 程序的输入:包含输入的数据格式和说明

1) 使用键盘输入数字选择功能

2) 使用键盘输入整数类型[int]的数据(测试时定义) 4. 程序的输出:程序输出的形式

1)程序输出在cmd命令行程序中

2)程序输出为整数类型的序号和整数类型的数据以及字符串类型的提示信息 5. 测试数据,如果程序输入的数据量比较大,需要给出测试数据

输入数据量由用户定义。 6. 合作人及其分工

独立完成。

二、 设计说明

1. 算法设计的思想

1)建立顺序表:按照用户的输入(顺序表长度及元素值)构建一张顺序表,使用动态内存分配在内存中分配出一块连续的存储区域存储数据。

2)读取指定位置的元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号;根据用户输入的数字将顺序表中的对应数字的序号及对应元素输出在屏幕上。 3)在指定位置之前插入新的元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择;然后让用户输入指定位置的序号,若输入序号在范围内则在让用户输入需插入的元素值,否则抛出错误;插入操作为:用动态内存分配创建一个比原来顺序表长度长一的顺序表,将原有元素和新输入的元素放入新创建的顺序表中,删除原来顺序表,将新创建顺序表赋给原来顺序表;在屏幕上输出插入后的结果。

2

4)删除指定位置元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择。;然后让用户输入指定位置的序号,若输入序号在范围内则执行删除操作,否则抛出错误;删除操作为:将指定位置之后的每个元素都向前移一位,把顺序表的长度减一;在屏幕上输出删除后结果。 5)查找一个元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择;然后让用户输入需查找的值,遍历顺序表,若有元素值等于用户输入值,跳出循环,得到相对应的序号;将序号输出在屏幕上。 6)查找重复元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择;然后让用户输入需查找的值,遍历顺序表,将所有与输入值相等的元素的序号输出在屏幕上。

7)删除一个给定值的元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择;根据用户的输入值用“查找一个元素”函数找到第一个与输入值相等的元素的序号,然后用“删除指定位置元素”函数删除这个元素;在屏幕上输出删除后的结果。 8)删除重复元素:首先在屏幕上输出顺序表中各个元素以及各元素所对应的序号,方便用户选择;提示用户输入要删除的元素值,先遍历顺序表将与输入值相同的元素的序号保存在一个与原顺序表等长的数组中,然后用“删除一个给定值的元素”函数删除与输入值相同的元素;在屏幕上输出删除后的结果。

9)将顺序表逆置:已顺序表中间元素为轴,定义一个临时变量,对调元素。在屏幕上输出逆置后的结果。

10)退出程序:退出算法演示程序。 2. 主要的数据结构设计说明 主要数据结构:顺序表 实现方式:动态数组 3. 程序的主要流程图;

4. 程序的主要模块,流程图;

进入程序开始输入插入位置序号输出菜单序号合法NY输入插入值用户输入选项创建一张length+1长度的新顺序表,将原有数据插入新表,留下该位置功能或退出进入各功能模块在该位置插入输入值,将新表赋给原表退出程序结束主菜单流程图在指定位置插入数据流程

3