Queue类的实现与Stack的实现

Queue类的实现与Stack的实现

ID:37901599

大小:40.50 KB

页数:4页

时间:2019-06-02

Queue类的实现与Stack的实现_第1页
Queue类的实现与Stack的实现_第2页
Queue类的实现与Stack的实现_第3页
Queue类的实现与Stack的实现_第4页
资源描述:

《Queue类的实现与Stack的实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、//包括queue类的实现及杨辉三角的输出#include#include#includeusingnamespacestd;templateclassqueue{protected:structnode{Tdata;node*next;public:node(Tvalue,node*link){data=value;this->next=link->next;link->next=this;}node(Tvalue){data=value;

2、}};private:node*last;public:queue(Tvalue){last=newnode(value);last->next=last;}~queue(){while(last!=last->next)pop();free(last);}queue(queue&ori){node*p1=newnode(1),*p2=ori.last;p1->data=p2->data;last=p1;while(p2->next!=ori.last){p2=p2->next;p1=newnode(p2->da

3、ta,p1);}p1->next=last;p1=last;}voidpush(Tvalue){last=newnode(value,last);}voidpop(){if(last==NULL){cout<<"Queueisempty!!"<next;if(last->next==last)last=NULL;elselast->next=last->next->next;free(p);}Tfront(){returnlast->next->data;}

4、boolempty(){if(last==NULL)returntrue;returnfalse;}};voidyhui(intn){queueque(1);que.push(1);cout<<"C0:"<<1<

5、!=i)printf("%-4d",ans);}cout<>n)yhui(n);return0;}//以下是Stack的实现代码#ifndefSTACK_H#defineSTACK_H#include//精简版#include#include#includeusingnamespacestd;templateclassStack{

6、protected:structnode{Tdata;node*next,*last;node(Titem,node*ptr){data=item;ptr->next=this;this->last=ptr;}node(Titem){data=item;}};private:node*head;intsize;public:Stack(){head=NULL;size=0;}~Stack(){while(size--){node*del=head;head=head->last;free(del);}}boole

7、mpty(){returnsize==0?true:false;}voidpush(Tvalue){head=(++size)==1?newnode(value):newnode(value,head);}voidpop(){if(size==0){cout<<"Stackempty!!"<last;free(del);size--;}T&top(){returnhead->data;}};#endif

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

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

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