《数据结构实验》讲义.doc

《数据结构实验》讲义.doc

ID:62031870

大小:39.00 KB

页数:10页

时间:2021-04-15

《数据结构实验》讲义.doc_第1页
《数据结构实验》讲义.doc_第2页
《数据结构实验》讲义.doc_第3页
《数据结构实验》讲义.doc_第4页
《数据结构实验》讲义.doc_第5页
资源描述:

《《数据结构实验》讲义.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验1线性表的基本操作实验编号JX020101-01所属院系计算机科学与技术所属年级2012—03所属课程数据结构试验实验目的1.掌握线性表的特点及其存储结构2.掌握线性表的基本操作实验要求1.线性表可以用顺序表也可以用单链表实现,鼓励大家用两种方式实现;2.创建线性表时,数据从键盘输入整形数据;3.线性表类型定义和或各种操作的实现,可以用教材给出的方法,也可以自己设计。实验环境硬件平台:计算机CPU主频2。0G以上;内存128兆以上;软件平台:Windows2003或以上版本,VisualC++6。0。实验内容1.用结构体描述一个线性表;2.创

2、建线性表,在线性表中实现插入、删除、按位置查找、按元素值查找和求表长等操作;3.设计选择式菜单,以选择菜单方式进行操作。实验步骤实验指导定义顺序表#defineLIST_INIT_SIZE100/*线性表存储空间的初始分配量*/#defineLISTINCREMENT2/*线性表存储空间的分配增量*/structSqList{ElemType*elem;/*存储空间基址*/intlength;/*当前长度*/intlistsize;/*当前分配的存储容量(以sizeof(ElemType)为单位)*/};定义算法函数StatusInitList(

3、SqList&L)/*算法2.3*/{/*操作结果:构造一个空的顺序线性表*/L。elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));if(!L。elem)exit(OVERFLOW);/*存储分配失败*/L。length=0;/*空表长度为0*/L。listsize=LIST_INIT_SIZE;/*初始存储容量*/returnOK;}StatusListInsert(SqList&L,inti,ElemTypee)/*算法2.4*/{/*初始条件:顺序线性表L已存在,1≤i≤List

4、Length(L)+1*//*操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1*/ElemType*newbase,*q,*p;if(i<1|

5、i>L。length+1)/*i值不合法*/returnERROR;if(L。length〉=L.listsize){/*当前存储空间已满,增加分配*/if(!(newbase=(ElemType*)realloc(L。elem,(L.listsize+LISTINCREMENT)*sizeof(ElemType))))exit(OVERFLOW);/*存储分配失败*/L.elem=newb

6、ase;/*新基址*/L.listsize+=LISTINCREMENT;//增加存储容量}q=L.elem+i-1;/*q为插入位置*/for(p=L.elem+L.length—1;p>=q;——p)/*插入位置及之后的元素右移*/*(p+1)=*p;*q=e;//插入e++L.length;/*表长增1*/returnOK;}主函数样例voidmain(){SqListL;Statusi;intj;i=InitList(&L);printf("初始化L后:L。elem=%uL。length=%dL.listsize=%d",L。elem

7、,L。length,L.listsize);for(j=1;j<=5;j++)i=ListInsert(L,1,j);printf(”在L的表头依次插入1~5后:*L.elem=");for(j=1;j〈=5;j++)cout〈<*(L.elem+j-1)<<'’;cout<

8、将该表逆置的算法。实验2栈的应用实验编号JX020101-02所属院系计算机科学与技术所属年级2012-03所属课程数据结构试验实验目的(1)学会栈基础知识、结构特点、存贮结构;(2)练习使用栈的结构特点和基本操作;(3)学会使用栈处理应用问题的方法。实验要求1.栈结构可以用顺序栈实现.2.测试数据从键盘输入。3.栈类型定义和或各种操作的实现,可以用教材给出的方法,也可以自己设计.实验环境硬件平台:计算机CPU主频2。0G以上;内存128兆以上;软件平台:Windows2003或以上版本,VisualC++6。0。实验内容1.用结构体描述一个栈;

9、2.构造一个空栈,实现数据元素出栈、入栈等操作;3.编写程序实现非负十进制整数到八进制整数的转换;4.假设一个算术表达式中包含圆括弧、方

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。