数据结构实验报告-线性表(共5页).doc
《数据结构实验报告-线性表(共5页).doc》由会员分享,可在线阅读,更多相关《数据结构实验报告-线性表(共5页).doc(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上课程名称数据结构 实验名称线性表的操作 实验日期班 级计科 姓 名 学号 仪器编号实验报告要求 1.实验目的 2.实验要求 3.实验步骤 4.程序清单 5.运行情况 6.流程图 7.实验体会 实验目的:实验目的: 熟悉线性表的定义和基本操作; 掌握线性表的顺序存储结构设计与基本操作的实现。 实验任务与要求: 定义线性表的顺序存储表示; 基于所设计的存储结构实现线性表的基本操作; 编写一个主程序对所实现的线性表进行测试; 线性表的应用:编程实现顺序表的合并 实验内容:1、 运行以下程序,理解静态分配顺序存储结构的线性表的下列基本操作。 (1)初始化顺序表 (2)创建顺序
2、表 (3)判断空表 (4)求顺序表长度 (5)输出顺序表 (6)取顺序表位置i的元素值 (7)在顺序表中查找值为e的元素位置 (8)向顺序表中插入一个元素 (9)从顺序表中删除一个元素2、采用书上第22页定义的线性表动态分配顺序存储结构,编程实现书中算法2.3、算法2.4和算法2.5。 提示:要实现算法2.4和2.5,必须先创建n个数据元素的顺序表,另外输出顺序表的操作也是必要的。 3、采用线性表动态分配顺序存储结构,实现顺序表的合并操作:设有线性表LA和LB,试设计算法将LA和LB归并为新的线性表LC;设线性表L1和L2中的数据元素为整数,且均已按值非递减有序排列,要求L3中的数据元素也按值
3、非递减有序排列。程序清单:1、略2、#include#include#define LIST_INIT_SIZE 100#define LISTINCREMENT 10#define ERROR 0#define OK 1typedef int ElemType;typedef structint *elem;int length;int listsize;SqList;int InitList_Sq(SqList &L)L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType);if(!L.elem) return ERROR;L.len
4、gth=0;L.listsize=LIST_INIT_SIZE;return OK;void CreateList_Sq(SqList &L,int n)int i;printf(输入%d个元素:n,n);for(i=0;in;i+)scanf(%d,&L.elemi);L.length=n;void DispList_Sq(SqList L)int i;if (L.length=0) return;for(i=0;iL.length;i+)printf(%d ,L.elemi);printf(n);int ListInsert_Sq(SqList &L,int i,ElemType e)El
5、emType *newbase;int *p,*q;if(iL.length+1) return ERROR;if(L.length=L.listsize)newbase=(ElemType*)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(ElemType);if(!newbase) return ERROR;L.elem=newbase;L.listsize+=LISTINCREMENT;q=&(L.elemi-1);for(p=&(L.elemL.length-1);p=q;-p)*(p+1)=*p;*q=e;+L.length;retu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验 报告 线性
限制150内