ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:49.51KB ,
资源ID:28720211      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28720211.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(合肥工业大学数据结构试验一实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

合肥工业大学数据结构试验一实验报告.docx

1、合肥工业大学数据结构试验一实验报告计算机与信息学院数据结构实验报告专 业 班 级学生姓名及学号课程教学班号任 课 教 师实验指导教师实验地点5 216学年第 2 学期说明实验报告是关于实验教学内容、过程及效果的记录和总结,因此,应注意以下事项和要求:、每个实验单元在4页的篇幅内完成一份报告、“实验单元”指依照实验指导书规定的实验内容。若篇幅不够,可另附纸。2、各实验的预习部分的内容是进入实验室做实验的必要条件,请按要求做好预习。3、实验报告要求:书写工整规范,语言表达清楚,数据和程序真实、理论联系实际,认真分析实验中出现的问题与现象,总结经验。4、参加实验的每位同学应独立完成实验报告的撰写,其

2、中程序或相关的设计图纸也能够采纳打印等方式粘贴到报告中。严禁抄袭或拷贝,否则,一经查实,按作弊论取,并取消理论课考试资格。5、实验报告作为评定实验成绩的依据。实验序号及名称:实验一 单链表实验 实验时间 2016年 5 月 预习内容一、实验目的和要求(1)理解线性表的链式存储结构。(2)熟练掌握动态链表结构及有关算法的设计。()依照具体问题的需要,设计出合理的表示数据的链表结构,设计相关算法。二、实验任务说明1:本次实验中的链表结构均为带头结点的单链表。说明2:为使实验程序简洁直观,下面的部分实验程序中将所需要的函数以调用库函数的形式给出,并假设将库函数放在程序文件“liklit、”中,同时假

3、设该库函数文件中定义了链表结构中的指针类型为link,结点类型为nde,并定义了部分常用运算、 例如构建链表、以某种方式显示链表、从文件中读入一个链表、跟踪访问链表结点等。 各运算的名称较为直观,并有相应的注释,因而易于理解和实现。三、实验准备方案,包括以下内容:(硬件类实验:实验原理、实验线路、设计方案等)(软件类实验:所采纳的核心方法、框架或流程图及程序清单)实验准备方案: 构建库函数:定义了链表结构中的指针类型为link,结点类型为ne,并定义了部分常用运算,如构建链表,显示链表,读取链表,访问链表等;流程: 略 实验内容一、实验用仪器、设备:个人计算机fr、0二、实验内容与步骤(过程及

4、数据记录):1求链表中第i个结点的指针(函数),若不存在,则返回NUL。实验测试数据基本要求:第一组数据:链表长度n0,分别为5,n,0,n+1,n2第二组数据:链表长度n=0,分别为0,nde* list:ddrss(it i)node*p =ednext;int = ; while ( != i&p!= NULL)p = p-next;+; i (p!=NULL) trnp;elreturn NL;第一组数据第二组数据2在第i个结点前插入值为的结点。实验测试数据基本要求:第一组数据:链表长度n1,x=0, 分别为5,n,+1,1,n+2第二组数据:链表长度n=,=00,=rorcoe li

5、t:nset(constint i,const intx) node p;p= ad; int =; hl (n !=i&p != NULL) p =-net; n+; i (i1 iet() 1) rturn rgeror; ode * =new nod;sdata = x; s-next=next;pnet =; coun+; reun succes;删除链表中第i个元素结点、实验测试数据基本要求:第一组数据:链表长度1,i分别为,n,1,n+1,0 第二组数据:链表长度=0, 5errcde list:delete_e(const it i)node *;p head;int = 1;

6、while (n != ip! NULL) =pnet; n+; if ( 1 i count) retrnrageerror; noe *u; u p-nt;pnex = ext; ont-; elet u; etrn succs;在一个递增有序的链表L中插入一个值为x的元素,并保持其递增有序特性。实验测试数据基本要求:链表元素为(,20,3,4,50,6,70,90,100),分别为,5,110和8erorode ist:orerisert(nt x)no p = hea; t=; while(pnex !=NULL) (pnexdta x)p = p-next; elsbreak; no

7、de*u = new noe;uaa = x;unex = pxt; p-ex = u;cun+; rr sucess;将单链表中的奇数项和偶数项结点分解开,并分别连成一个带头结点的单链表,然后再将这两个新链表同时输出在屏幕上,并保留原链表的显示结果,以便对比求解结果。实验测试数据基本要求:第一组数据:链表元素为 (1,2,3,4,5,6,7,8,9,10,20,30,4,50,60)第二组数据:链表元素为 (0,20,30,40,0,60,70,8,90,10)voidept(litA,list&B,isC) nodeLA;noeLB;nod*p;node;node;node*s; LA=A

8、。gt_hed(); L=B、get_head(); qL;p=LAnext;sLB; i(p-dat=0) u=p;-ex;qnxt=p; s-nxt=; s=ext; ee p=pext;q=qnext; 6求两个递增有序链表L1和L中的公共元素,并以同样方式连接成链表L3。实验测试数据基本要求: 第一组第一个链表元素为(1,3,6,10,15,7,1,1,)第二个链表元素为 (1,2,3,4,5,6,7,8,9,10,1,20,)第二组第一个链表元素为(,3,10,1,1,7,18,9,20)第二个链表元素为 (2,4,7,8,12,2)第三组第一个链表元素为 ()第二个链表元素为 (1

9、,2,3,4,5,6,7,8,1)ing(lisA,list B,lst&C) ndeLA; nodeLB;nd*LC; nodea;nodeb; =C、thead(); =A、gt_hea();L=、gha(); a=LA-et;b=LB-ne; hile(a!=NULL&!=ULL)i(a-dat) aa-next; elsif(aatab-ta) bbxt; ee ndc=new node; c-data=at;LC-et;LC=c;C、ont+; a=anext;b=bnet; LCnet=NULL; CP文件附加:ncudoste。icludemath。 numero_codsuce

10、ss,rrane_error; teef stu noeint at;nodenext;nd;class listbc: list(); i lengt()onst; list(); node* getemen(int lcae)cos; nodelocate(cons n )cons; e_coe hau(cost n i); rror_ceinsert(cst in lcate,ost int i); rorco delte_elment(const inti); ode* gt_hed()eturn ea; voidsepaate(lstA,istB); in ingji(list A,

11、lt ,list&C); oid creatR(); od lis:o(); privat: int nt; noe*hed; nderea ;lst:l() hed=new node; hea-ne=NULL; ot0; itlit:lengt() onst nodehed-next; inout=0; hl(p!=LL) cunt+; p=pnex; return un;voi ist:ceaeR()nt ; ct请输入链表中的数值,按后结束创建x; nde * list :get_eet(int lcae)const if(ount0) reur 0; else if(loce=0|oa

12、tcn) rtun 0;lsnde=ea; it k0;whie(p!=NUL&klcate) ppnex;k+;reurnp; voidlist:ho() nodphea;wile(p!NU) outdaat; p=pn; rrrd st:inset(cont int locte,onst int i) if(cout=0) nod*sw node; ti; snt=NLL; headnexts; ear=s; cunt=1; retr sces; else if(locate1|locatecount+1) retu rrnge_erro; else ndep=ha;n ; wile(!=

13、loctep!=NLL) p-next;+; nde*=ew node; s-dtai; -next=pnext; p-next=s; count+; urn suces; errocde list:chru(cnst t i) nodeea;while(p!=NL&ext!=NLL) i(pdata=iinex-data) nd*=ewnode; s-datai; et=pnet; pnx=; cout+; els p=pex;f(p-next=NUL) odes=ewnode; -t; s-xt=UL; p-nxt=s; on+; run sus; or_code list:delet_e

14、leme(cnst in i) nod p=head;t j=0; while(!=1&!=ULL) p=-e;+; f(nexp; snexu; ss-nex; lse p=nxt;q=qnext; vod seprate(litA,list&B,listC) nLA;node;node;od*q;node*u;ods; LA=A、getead();B=B、ghea();qA;=Ane;s=L; i(-data%2=) u=p;=pnxt;qnext=p; s-next=u; s=s-next; ele p-x;q=qnext; int st:bingji(litA,i B,istC) de

15、*LA; nodeL; node*LC; noda;ndeb; =C、gt_hd(); A=A、gthed(); LB=B、et_head();a=LAnx;LBnxt; while(a!NULL&b!=ULL) if(db-daa) a=a-next;ele i(adataa) b=-nxt; ee nodec=nod; cdata=-dta; LC-ext=c;C=; C。count+; a=a-net;b=bt; LC-nxt=ULL; rurn sucess;nt min()ntcoic;it i;list A;ls B;lst C;do /显示主菜单 c n; o” n; cot 主

16、菜单 n; cout” n; cout*endl; cout n; cot 1创建链表 2求第个节点指针 n; cot” ; cut” 在第i个节点前插入一个数 4删除链表中的第i个节点;ct n”; cout 5-分离链表 6求公共元素n”; cout” ”; cou 7插入一个数 8退出n; ct ”; cot *”ndl;cout”Enter coie:; cichoce; swtch(chie) e: 。create_R(); B、cree_R(); A、length(); 、legth(); break; case 2: int k; coutk;i(A。gelement()=NU)couNULLedl; else coutndl; break; ase 3: A。legth(); it a,; outi; 、hau(i); A。sow(); as 8: cou”结束运行”edl; re; while(hoce!=7);turn;三、实验结果分析、考虑题解答四、感想、体会、建议实验成绩指导教师签名:年 月 日

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1