循环队列(链表实现).docx

循环队列(链表实现).docx

ID:60369304

大小:66.07 KB

页数:5页

时间:2020-12-05

循环队列(链表实现).docx_第1页
循环队列(链表实现).docx_第2页
循环队列(链表实现).docx_第3页
循环队列(链表实现).docx_第4页
循环队列(链表实现).docx_第5页
资源描述:

《循环队列(链表实现).docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、/*该程序在vs2010旗舰版下成功编译运行正常*//*循环队列链表实现,自行建立头文件头文件实现main引用三个文件*///头文件#ifndef_CIRCLE_QUEUE_H_#define_CIRCLE_QUEUE_H_templatestructNode{TData;Node*Next;};templateclassCircle_Queue{public:Circle_Queue();voidPush_Queue(Ta);TPOP_Queue();voidPrint_All();~Circ

2、le_Queue();private:Node*End;};#endif//头文件实现#include#include"circle_queue.h"templateCircle_Queue::Circle_Queue(){End=newNode;End->Next=End;}templatevoidCircle_Queue::Push_Queue(Ta)//入队操作{Node*p;p=newNode;p->Data=a;p->Next=End-

3、>Next;1End->Next=p;End=p;}templateTCircle_Queue::POP_Queue(){if(End==End->Next)//判断队列是否为空{throw">>>>>>>QUEUEISNULL!<<<<<<<<<";}Node*p,*Head;Ttemp;Head=End->Next;p=Head->Next;if(p==End)//如果已经到达队尾,则对该队列进行置空队,并返回最后一个值{temp=End->Data;End->Next=End;deleteHead;

4、}else{temp=p->Data;Head->Next=p->Next;deletep;}returntemp;}templatevoidCircle_Queue::Print_All()//显示所有队列元素{if(End==End->Next){throw">>>>>>>QUEUEISNULL!<<<<<<<<<";}Node*Head;Head=End->Next->Next;//第一个节点不是有效节点while(Head!=End->Next){cout<Data<<"";Head

5、=Head->Next;2}}templateCircle_Queue::~Circle_Queue(){if(End!=End->Next){Node*p1,*p2;p1=End->Next;p2=p1;while(p1!=End){p1=p1->Next;deletep2;p2=p1;}deleteEnd;}}//main引用#include#include"circle_queue.cpp"usingnamespacestd;intmain(){intm,n,b,d=0;try{

6、Circle_Queuec1;c1.Push_Queue(1);c1.Push_Queue(2);c1.Push_Queue(3);c1.Print_All();m=c1.POP_Queue();n=c1.POP_Queue();b=c1.POP_Queue();d=c1.POP_Queue();3}catch(constchar*str){cout<

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

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

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