实验三-线性链表

实验三-线性链表

ID:41644700

大小:110.06 KB

页数:6页

时间:2019-08-29

实验三-线性链表_第1页
实验三-线性链表_第2页
实验三-线性链表_第3页
实验三-线性链表_第4页
实验三-线性链表_第5页
资源描述:

《实验三-线性链表》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、课程实验报告课程名称数据结构班级网络软件设计与开发1班实验日期姓名刘小葱学号1145328751实验成绩实验名称链表的基本操作实验冃的及要求目的:线性链表的构建、插入、删除、合并、归并等操作。要求:1、每次实验前学生必须根据实验内容认真准备实验程序及调试时所盂的输入数据。2、在指导教师的帮助下能够完成实验内容,得出正确实验环境MicrosoftVisualC++6.0实验内容链表的生成、合并和归并(编写构造一个链表的函数;编写实现查找、插入、求表长、合并、归并等函数;编写主函数,定义两个线性链表,输入链表的数据,进行合并和归并操作。)源程序清单源程序:#include

2、#include#defineTRUE1及实验结果#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1#defineOVERFLOW-2typedefintStatus;typedefintElemType;typedefstructLNode{ElemTypedata;structLNode水next;}LNode,*LinkList;StatusInitListSq(LinkList&L);StatusListInsertSq(LinkList&LJnti,ElemTy

3、pee);StatusListDeleteSq(LinkList&L,inti,ElemType&e);voidListTraverseSq(LinkListL);voidMergeList(LinkList&La,LinkList&Lb,LinkList&Lc);intmain(){ints,e;LinkListlajbjc;s=InitListSq(la);s=InitListSq(lb);s=InitListSq(lc);printf("la为:”);s=ListInsertSq(la,1,1);s=ListInsertSq(la,2,3);s=ListInse

4、rtSq(la,3,4);s=ListInsertSq(la,4,7);s=ListInsertSq(la,5,13);ListTraverseSq(la);printf(nH);printf(nn);printf(Hlb为:”);s=ListInsertSq(lb,l,2);s=ListInsertSq(lb,2,5);s=ListInsertSq(lb,3,7);s=ListInsertSq(lb,4,9);s=ListInsertSq(lb,5,l1);ListTraverseSq(lb);printf(nH);printf(nn);printf

5、C删除后lb为:”);s=ListDeleteSq(lb,2,e);ListTraverseSq(lb);printf(nH);printfC*删除的元素是:%dn,e);printfCAn");printf("la和lb合并后lc为:”);MergeList(la,lb,lc);ListTraverseSq(lc);printf(nn);return0;}StatusInitListSq(LinkList&L){L=(LinkList)malloc(sizeof(LNode));if(!L)exit(0);L->next=NULL;returnOK;}S

6、tatusListInsertSq(LinkList&L,inti,ElemTypee){intj;LinkListp,s;P=L;j=o;while(p&&jvi・l){p=p->next;++j;}if(!pllj>i-l)returnERROR;s=(LinkList)malloc(sizeof(LNode));s->data=e;s->next=p->next;p->next=s;returnOK;}StatusListDeleteSq(LinkList&L,inti,ElemType&e){intj;LinkListp,q;P=L;j=0;while(p->

7、next&&jvi-1){p=p->next;++j;}if(!(p->next)llj>i-l)returnERROR;q=p->next;p->next=q->next;e=q->data;free(q);returnOK;}voidListTraverseSq(LinkListL){LinkListp;p=L・>next;while(p->next!=NULL){printf(”%d",p->data);p=p->next;}printf(H%dH,p->data);}voidMergeList(LinkList&La,LinkList&Lb,

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

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

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