欢迎来到天天文库
浏览记录
ID:14894417
大小:169.11 KB
页数:10页
时间:2018-07-30
《数据结构实验报告二线性表的顺序存储》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验报告二线性表的顺序存储班级:2010XXX姓名:HoogLe学号:2010XXXX专业:XXXX2858505197@qq.com一、实验目的:(1)掌握顺序表的基本操作的实现方法。(2)应用顺序表的基本算法实现集合A=AUB算法。(3)应用顺序表的基本算法实现两有序顺序表的归并算法。二、实验内容:1、线性表顺序存储结构的基本操作算法实现(要求采用类模板实现)[实现提示](同时可参见教材p5822-p60页算法、ppt)函数、类名称等可自定义,部分变量请加上学号后3位。库函数载和常量定义:(代码)#include
2、usingnamespacestd;constintMaxSize=100;(1)顺序表存储结构的定义(类的声明):(代码)template//定义模板类SeqListclassSeqList{public:SeqList();//无参构造函数SeqList(datatypea[],intn);//有参构造函数~SeqList(){};//析构函数为空intLength();//求线性表的长度datatypeGet(inti);//按位查找,取线性表的第i个元素int
3、Locate(datatypeitem);//查找元素itemvoidInsert(inti,datatypeitem);//在第i个位置插入元素itemdatatypeDelete(inti);//删除线性表的第i个元素voiddisplay();//遍历线性表,按序号依次输出各元素private:datatypedata[MaxSize];//存放数据元素的数组intlength;//线性表的长度};(2)初始化顺序表算法实现(不带参数的构造函数)/**输入:无*前置条件:顺序表不存在*功能:构建一个顺序表*输出
4、:无*后置条件:表长为0*/实现代码:templateSeqList::SeqList(){length=0;}(3)顺序表的建立算法(带参数的构造函数)/**输入:顺序表信息的数组形式a[],顺序表长度n*前置条件:顺序表不存在*功能:将数组a[]中元素建为长度为n的顺序表*输出:无*后置条件:构建一个顺序表*/实现代码:templateSeqList::SeqList(datatypea[],intn){if(n>
5、MaxSize){cout<<"数组元素个数不合法"<voidSeqList::Insert(inti,datatypeitem){intj;if(l
6、ength>=MaxSize){cout<<"溢出"<7、8、i>length+1){cout<<"i不合法!"<=i;j--)data[j]=data[j-1];data[i-1]=item;length++;}(5)删除线性表中第i个元素算法/**输入:要删除元素位置i*前置条件:顺序表存在,i要合法*功能:删除顺序表中位置为i的元素*输出:无*后置条件:顺序表册除了一个元素,表长减1*/实现代码:templateda9、tatypeSeqList::Delete(inti){intitem,j;if(length==0){cout<<"表为空,无法删除元素!"<10、11、i>length){cout<<"i不合法!"<12、表遍历*输出:输出所有元素*后置条件:无*/实现代码:templatevoidSeqList::display(){if(length==0){cout<<"表为空,无法输出!"<
7、
8、i>length+1){cout<<"i不合法!"<=i;j--)data[j]=data[j-1];data[i-1]=item;length++;}(5)删除线性表中第i个元素算法/**输入:要删除元素位置i*前置条件:顺序表存在,i要合法*功能:删除顺序表中位置为i的元素*输出:无*后置条件:顺序表册除了一个元素,表长减1*/实现代码:templateda
9、tatypeSeqList::Delete(inti){intitem,j;if(length==0){cout<<"表为空,无法删除元素!"<10、11、i>length){cout<<"i不合法!"<12、表遍历*输出:输出所有元素*后置条件:无*/实现代码:templatevoidSeqList::display(){if(length==0){cout<<"表为空,无法输出!"<
10、
11、i>length){cout<<"i不合法!"<12、表遍历*输出:输出所有元素*后置条件:无*/实现代码:templatevoidSeqList::display(){if(length==0){cout<<"表为空,无法输出!"<
12、表遍历*输出:输出所有元素*后置条件:无*/实现代码:templatevoidSeqList::display(){if(length==0){cout<<"表为空,无法输出!"<
此文档下载收益归作者所有