收藏 分享(赏)

数据结构实验报告一(顺序存储和操作).doc

上传人:weiwoduzun 文档编号:3675673 上传时间:2018-11-15 格式:DOC 页数:4 大小:51KB
下载 相关 举报
数据结构实验报告一(顺序存储和操作).doc_第1页
第1页 / 共4页
数据结构实验报告一(顺序存储和操作).doc_第2页
第2页 / 共4页
数据结构实验报告一(顺序存储和操作).doc_第3页
第3页 / 共4页
数据结构实验报告一(顺序存储和操作).doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、南京信息工程大学 实验(实习)报告实验(实习)名称 有序表的合并(顺序存储) 实验(实习)日期 2014.9.30 得分 指导教师 吴婷婷 系 理学系专业 软件工程 年级 2 班次 13 软工 1 班 姓名 彭路 学号 20131344031 一、实验目的用顺序表(SqList)类型实现书上算法 2.1 和 2.2,了解线性表及在计算机中的两类不同的存储结构;熟练掌握线性表的查找、插入和删除等算法并灵活运用这些算法。二、实验准备1.windows7 计算机或以上机型2.Dev-Cpp三、实验内容用 C 语言编写程序,其中 Lb=2,4,6,8,10 La=1,2,3,4,5, 算法 2.1 执

2、行后,得到的 new La = 1,2,3,4,5,6,8,10 修改 Lb=2,6,8,9,11,15,20,并利用新生成的 La,得到合并后的 Lc,Lc= 1,2,2,3,4,5,6,6,8,8,9,10,11,15,20四、程序#include #include #include # define TRUE 1# define ERROR 0# define OK 1# define OVERFLOW -2# define FALSE 0# define LIST_INIT_SIZE 10# define LISTINCREMENT 5#define MAXSIZE 100typede

3、f structint dataMAXSIZE; /*存放线性表的数组*/int length; /* length 是顺序表的长度*/List;void InitList(Listvoid ClearList(Listvoid ListInsert(Listif(L.length=MAXSIZE)printf(“表满,不能插入n“);else if(iL.length+1)printf(“插入位置不正确n“);else for(j=L.length-1;j=i-1;j-) /*元素依次向后移动*/L.dataj+1=L.dataj;L.datai-1=x; /*插入 x*/L.length+

4、; /*表长增 1*/void ListTraverse(List L) int i;if(L.length=0i-;k-;else La.datak=Lb.dataj;j-;k-;while(i0) Lc.datak=La.datai;i-;k-;/*La 没有结束*/while(j0) Lc.datak=Lb.dataj;j-;k-; /*Lb 没有结束*/La.length=m+n; /*合并后的表长*/int main()List La,Lb,Lc;int j,b7=2,6,8,9,11,15,20;InitList(La); / 创建空表 La。如不成功,则会退出程序的运行for(j

5、=1;j=5;j+) / 在表 La 中插入 5 个元素,依次为 1、2、3、4、5ListInsert(La,j,j);printf(“La= “);ListTraverse(La); / 输出表 La 的内容InitList(Lb); / 创建空表 Lbfor(j=1;j=5;j+) / 在表 Lb 中插入 5 个元素,依次为 2、4、6、8、10ListInsert(Lb,j,2*j);printf(“Lb= “);ListTraverse(Lb); / 输出表 Lb 的内容Union(La,Lb); / 调用算法 2.1,将 Lb 中满足条件的元素插入 La(不改变 Lb)printf

6、(“new La= “);ListTraverse(La); / 输出新表 La 的内容ClearList(Lb); / 清空表 Lbfor(j=1;j=7;j+) / 在表 Lb 中重新依次插入数组 b的 7 个元素ListInsert(Lb,j,bj-1);printf(“Lb= “);ListTraverse(Lb); / 输出表 Lb 的内容MergeList(La,Lb,Lc); / 调用算法 2.2,生成新表 Lc(不改变表 La 和表 Lb)printf(“Lc= “);ListTraverse(Lc); / 输出表 Lc 的内容return 0;【运行结果】五、实验总结线性表是软件设计中最基础的数据结构。用顺序方法存储的线性表称为顺序表,当线性表中很少做插入和删除操作,线性表的长度变化不大,易于事先确定其大小时,可以采用顺序表作为存储结构。在实际应用中应该考虑以下因素:()应有利于运算的实现;()应有利于数据的特性;()应有利于软件环境。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 规范标准 > 实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报