1 / 3
文档名称:

《实验报告五递归及队列》.doc

格式:doc   大小:47KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《实验报告五递归及队列》.doc

上传人:755273190 2019/3/13 文件大小:47 KB

下载得到文件列表

《实验报告五递归及队列》.doc

文档介绍

文档介绍:实验报告五递归及队列班级:姓名:学号:专业:实验目的:掌握递归的基本思想。掌握链式队列及循环队列的基本操作算法。实验内容:1、p(a-b,b)+1当a>=bp(a,b)=其中a,b为正整数。0当a<b利用递归设计此函数。intp(inta,intb){}voidmain(){}粘贴测试数据及运行结果:2、Ackerman函数如下:n+1当m=0Ack(n,m)=Ack(m-1,1)当n=0Ack(m-1,Ack(m,n-1))其它情形利用递归设计此函数。试求Ack(1,2),Ack(2,1)?。intAck(intn,intm){}voidmain(){}粘贴测试数据及运行结果:3、链式队列的基本操作算法实现[实现提示](同时可参见教材p54-p69页算法)库函数和常量定义:(1)链队列(单链表)的存储结构定义:typedefintstatus;typedefcharQElemType;typedefstructQNode{ QElemTypedata; structQNode*next;}QNode,*QueuePtr;typedefstruct{ QueuePtrfront; QueuePtrrear;}LinkQueue;LinkQueueQ;(2)初始化链式空队列StatusInitQueue(LinkQueue*Q){}(3)销毁队列算法StatusDestroyQueue(LinkQueue*Q){}(4)入队操作算法StatusEnQueue(LinkQueue*Q,QElemTypee){}(5)出队操作算法StatusDeQueue(LinkQueue*Q,QElemType*e){}(6)清空队列算法StatusClearQueue(LinkQueue*Q){}(7)判队列为空算法StatusQueueEmpty(LinkQueueQ){}(8)获得队列头结点StatusGetHead(LinkQueueQ,QElemType*e){}(9)遍历队列中的元素StatusQueueTraverse(LinkQueueQ){}(10)求队列长度intQueueLength(LinkQueueQ){}voidmain(){}粘贴测试数据及运行结果:4、循环队列的实现(1)循环队列存储结构定义:#defineMAXQSIZE100typedefintstatus;typedefcharQElemType;typedefintStatus;typedefcharQElemType;typedefstruct{QElemType*base; intfront; intrear;}SqQueu