数据结构实验报告顺序表
选课时间段: 周四6、7、8、9
序 号:
实验报告
课程名称: 数据结构
实验名称: 顺序表的实现
指导教师:
学生姓名:
学生学号:
实验日期: 2013年4月11日
一、实验目的
1、 熟悉实验环境
2、 理解顺序表的基本操作
3、 了解顺序表的建立和输出
4、 掌握顺序表的插入、删除、合并和归并等实现方法
二、实验内容
三、实验步骤
1.需求分析
本演示程序用C语言编写,完成顺序表的生成,任意位置的插入、删除,以及确定某一元素在顺序表中的位置。
① 输入的形式和输入值的范围:插入元素时需要输入插入的位置和元素的值;删除元素时输入删除元素的位置;查找操作时需要输入元素的值。在所有输入中,元素的值都是整数。
② 输出的形式:在所有三种操作中都显示操作是否正确以及操作后顺序表的内容。其中删除操作后显示删除的元素的值,查找操作后显示要查找元素的位置。
③ 程序所能达到的功能:完成顺序表的生成(通过插入操作)、插入、删除、查找操作。
④ 测试数据:
A. 插入操作中依次输入11,12,13,14,15,16,生成一个顺序表
B. 查找操作中依次输入12,15,22返回这3个元素在顺序表中的位置
C. 删除操作中依次输入2,5,删除位于2和5的元素
2.概要设计
1)为了实现上述程序功能,需要定义顺序表的抽象数据类型: ADT LinkList { 数据对象:D={ai|ai∈IntegerSet,i=0,1,2, ,n,n≥0} 数据关系:R={<ai,ai+1>|ai,ai+1 ∈D} 基本操作: InitLinkList(&L) 操作结果:构造一个空的顺序表L. InsLinkList(&L,pos,e) 初始条件:顺序表L已存在
} 操作结果:将元素e插入到顺序表L的pos位置 DelLinkList(&L,pos,&e) 初始条件:顺序表L已存在 操作结果:将顺序表L中pos位置的元素删除,元素值置入e中返回 LocLinkList(L,e) 初始条件:顺序表L依存在 操作结果:顺序表L中查找是否元素e,若存在,返回元素在表中的位置;若不存 在,返回-1. Menu() 操作结果:在屏幕上显示操作菜单 2)本程序包含7个函数: ① 主函数main() ② 初始化顺序表函数InitLinkList() ③ 显示操作菜单函数menu() ④ 显示顺序表内容函数dispLinkList() ⑤ 插入元素函数InsLinkList() ⑥ 删除元素函数DelLinkList() ⑦ 查找元素函数LocLinkList()
3.详细设计
实现概要设计中定义的所有的数据类型,对每个操作给出C代码算法。对主程序和其他模块也都需要写出C代码算法。
1) 结点类型和指针类型
????????????
2) 顺序表的基本操作
bool InitLinkList(LinkList &L) (C代码算法) void DispLinkList(LinkList L) (C代码算法) void menu() (C代码算法) bool InsLinkList(LinkList &L,int pos,int e) (C代码算法) bool DelLinkList(LinkList &L,int pos,int &e) (C代码算法) int LocLinkList(LinkList L,int e) (C代码算法)
3) 其他模块C代码算法
4.使用说明
程序名为????????.exe,运行环境为DOS。程序执行后显示 ======================== 0----EXIT 1----INSERT 2----DELETE 3----LOCATE ======================= SELECT:
在select后输入数字选择执行不同的功能。要求首先输入足够多的插入元素,才可以进行其他的操作。每执行一次功能,就会显示执行的结果(正确或错误)以及执行后顺序表的内容。
选择0:退出程序 选择1:显示“INSERT pos,e =” , 要求输入要插入的位置和元素的值(都是整数)。 选择2:显示“DELETE pos =” , 要求输入要删除元素的位置,执行成功后返回元素的值。 选择3:显示“LOCATE e = ” , 要求输入要查找元素的值,执行成功后返回元素在表中的位置
6.测试结果
1) 建立顺序表:
» 选择1,分别输入(0,11),(0,12),(0,13),(0,14)(0,15)。得到顺序表(15,14,13,12,11)
2) 插入:
» 选择1输入(1,100),得到顺序表(15,100,14,13,12,11)
» 选择1输入(-1,2),显示输入错误
» 选择1输入(7,2),显示输入错误
» 选择1输入(6,2),得到顺序表(15,100,14,13,12,11,2)
3) 删除:
» 选择2,输入1。返回e=100,得到顺序表(15,14,13,12,11,2) » 选择2,输入0。返回e=15,得到顺序表(14,13,12,11,2)
» 选择2,输入4。返回e=2,得到顺序表(14,13,12,11)
» 选择2,输入5。返回输入错误
4) 查找
» 选择3,输入14。返回pos=0
» 选择3,输入100。返回输入错误
四、实验总结(结果分析和体会)
…… 此处隐藏:482字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文




