欢迎来到天天文库
浏览记录
ID:35342733
大小:55.73 KB
页数:5页
时间:2019-03-23
《数据结构实验报告(3)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数据结构实验报告姓名:班级:学号:日期:2015年10月17日上机环境:win7系统,mircosoftvisual++1.实验题目编写一个程序algo2-l.cpp,实现单链表的各种基本运算(假设单链表的元素类型为char)并在此基础上设计一个主程序完成如下功能:(1)初始化单链表L;⑵依次采用尾插入法插入a,b,c,d,e元素;⑶输出单链表L;(4)输出单链表L的长度;⑸判断单链表L是否为空;(6)输出单链表L的第3个元素;(7)输出元素2的位置;(8)在第4个元素位置上插入f元素;(9)输出单链表L;(10)删除L的第3个元素;⑴)输出单链表L;(12)释
2、放顺序表;2.实验程序#include#includetypedefcharElemType;typedefstructLNode{ElemTypedata;structLNode*next;JLinkList;voidlnitList(LinkList*&L){L=(LinkList*)malloc(sizeof(LinkList));L->next=NULL;}voidDestroyList(LinkList*&L){LinkList*p=L,*q=p->next;while(q!=NULL){free(p);p=q;q
3、=p->next;}free(p);boolListEmpty(LinkList*L){return(L->next==NULL);}intListLength(LinkList*L){LinkList*p=L;inti=O;while(p->next!=NULL){i++;p=p->next;}return(i);}voidDispList(LinkList*L){LinkList*p=L->next;while(p!=NULL){printf("%c”,p・>data);p=p->next;}printf(”“);}boolGetElem(LinkLis
4、t*L,inti,ElemType&e){intj=0;LinkList*p=L;while(jnext;}if(p==NULL)returnfalse;elsee=p->data;returntrue;intLocateElem(LinkList*L,ElemTypee){inti=l;LinkList*p=L->next;while(p!=NULL&&p->data!=e){p=p->next;i++;}if(p==NULL)return(0);elsereturn(i);}boolListlnsertfUnkLi
5、st*&L,inti,ElemTypee){intj=0;LinkList*p=L,*s;while(jnext;}if(p==NULL)returnfalse;else{s=(LinkList*)malloc(sizeof(LinkList));s->data=e;s->next=p->next;p-〉next=s;returntrue;}}boolListDelete(LinkList*&L,inti,ElemType&e){intj=0;LinkList*p=L,*q;while(j6、){j++;p=p->next;}if(p==NULL)returnfalse;elseq=p->next;if(q==NULL)returnfalse;>data;p・>next=q->next;free(q);returntrue;}}voidmain(){LinkList*L;ElemTypee;InitList(L);Listlnsert(L,l/a');Listlnsert(Lz2/b');Listlnsert(Lz3,'c');ListlnsertfLA'd');Listlnsert(L,5,'e');DispList(L);printf("%d7、n,ListLength(L));printf(“%s吧(ListEmpty(L)?”空”:”非空”));GetElem(L,3,e);printf("%c",e);printf("%d",LocateElem(L/a'));Ustlnsert(LA'f');DispList(L);ListDelete(L,3,e);DispList(L);DestroyList(L);}1.实验结果■十—一——固8、C:Windowssystem32cmd.exe—回abcde5二♦非空—'c1abcfdeabfde请按任意键继续•••■.微软拼音-简捷20109、半:
6、){j++;p=p->next;}if(p==NULL)returnfalse;elseq=p->next;if(q==NULL)returnfalse;>data;p・>next=q->next;free(q);returntrue;}}voidmain(){LinkList*L;ElemTypee;InitList(L);Listlnsert(L,l/a');Listlnsert(Lz2/b');Listlnsert(Lz3,'c');ListlnsertfLA'd');Listlnsert(L,5,'e');DispList(L);printf("%d
7、n,ListLength(L));printf(“%s吧(ListEmpty(L)?”空”:”非空”));GetElem(L,3,e);printf("%c",e);printf("%d",LocateElem(L/a'));Ustlnsert(LA'f');DispList(L);ListDelete(L,3,e);DispList(L);DestroyList(L);}1.实验结果■十—一——固
8、C:Windowssystem32cmd.exe—回abcde5二♦非空—'c1abcfdeabfde请按任意键继续•••■.微软拼音-简捷2010
9、半:
此文档下载收益归作者所有