数据结构实验指导书new.doc

数据结构实验指导书new.doc

ID:50306863

大小:48.00 KB

页数:15页

时间:2020-03-07

数据结构实验指导书new.doc_第1页
数据结构实验指导书new.doc_第2页
数据结构实验指导书new.doc_第3页
数据结构实验指导书new.doc_第4页
数据结构实验指导书new.doc_第5页
资源描述:

《数据结构实验指导书new.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、数据结构实验指导书实验一线性表的创建与应用一、实验目的1、掌握线性表的定义2、掌握线性表的基本操作:插入、删除、查找以及线性表合并等运算在链接存储结构上的运算。二、实验内容1、阅读并运行本实验程序(有序顺序表实现)2、用单链表方式实现本程序相应功能(有序单链表)3、利用有序单链表实现一元多项式的加法的功能。三、实验要求1、认真阅读和掌握本实验的参考程序(有序顺序表)。2、上机运行该程序。3、保存和打印出程序的运行结果,并结合程序进行分析。4、按照有序顺序表功能,重新改写程序并运行,打印出文件清单和运行结果5、创建有序单链表时,要用头插法和尾插法同时实现。6

2、、实现一元多项式的加法的功能,并输出结果。7、最好能将结果写入到文本文件中。四、注意事项:1、实验学时:4学时2、实验完成一周内提交实验报告(实验报告本)3、实验结果要求抓图打印4、严禁抄袭五、实验附件程序(有序顺序表)Odsqlist.h文件:#defineLIST_INIT_SIZE8//线性表存储空间的初始分配量#defineLISTINCREMENT10//线性表存储空间的分配增量#defineOVERFLOW-2#defineERROR0#defineOK1#defineTRUE1#defineFALSE0typedefintStatus;typ

3、edefintElemType;typedefstruct{ElemType*elem;//存储空间基址intlength;//当前长度intlistsize;//当前分配的存储容量(以sizeof(ElemType)为单位)}SqList;//俗称顺序表typedefSqListOdSqList;//有序顺序表StatusInitList(OdSqList&);//结构初始化voidDestroy(OdSqList&);//销毁有序顺序表voidClearList(OdSqList&);//清空有序表StatusListEmpty(OdSqList);/

4、/判有序表为空intListLength(OdSqList);//求表长intLocateElem(OdSqList,ElemType);//查找voidListInsert(OdSqList&,ElemType);//插入元素StatusListDelete(OdSqList&,int,ElemType&);//删除元素intListDeletem(OdSqList&L,ElemTypee);//删除所有值为e的元素,返回删除的元素个数intListDeletemn(OdSqList&,ElemType,ElemType);//删除所有值界于mink~m

5、axk的元素,并返回删除的元素个数voidListTraverse(OdSqList);//遍历非递减有序线性表odsqlist.cpp文件:#include#include#include"odsqlist.h"StatusInitList(OdSqList&L){//构造一个空的线性表L.elem=(ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));if(!L.elem)exit(OVERFLOW);L.length=0;L.listsize=LIST_INIT_S

6、IZE;returnOK;}//InitListvoidListTraverse(OdSqListL){//遍历线性表inti;printf("listsizeis%d.",L.listsize);printf("listlengthis%d.",L.length);printf("thelistis:(");for(i=1;i<=L.length;i++)printf("%d",L.elem[i-1]);printf(")");}intLocateElem(OdSqListL,ElemTypee){//在顺序表中查询第一个满足判定条件的数据元

7、素,若存在,则返回它的位序,否则返回0inti;i=1;//i的初值为第1元素的位序ElemType*p;p=L.elem;//p的初值为第1元素的存储位置while(i<=L.length&&*p++!=e)++i;if(i<=L.length)returni;elsereturn0;}voidListInsert(OdSqList&L,ElemTypee){//在顺序表L中保序插入新的元素eElemType*newbase,*p,*q;if(L.length>=L.listsize){//当前存储空间已满,增加分配newbase=(ElemType*)

8、realloc(L.elem,(L.listsize+LISTIN

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

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

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