循环队列基本操作-华为OJ

循环队列基本操作-华为OJ

ID:38791457

大小:15.08 KB

页数:4页

时间:2019-06-19

循环队列基本操作-华为OJ_第1页
循环队列基本操作-华为OJ_第2页
循环队列基本操作-华为OJ_第3页
循环队列基本操作-华为OJ_第4页
资源描述:

《循环队列基本操作-华为OJ》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、/******************************************************************************Copyright(C),2001-2011,HuaweiTech.Co.,Ltd.******************************************************************************FileName:Version:Author:Created:2012/03/12LastModified:Description:F

2、unctionList:History:1.Date:2012/03/12Author:Modification:Createdfile******************************************************************************/#include#defineMAXSIZE50structstrqueue{intqueue[MAXSIZE];inthead;/*队头*/inttail;/*队尾*/intnum;/*队元素个数*/};boolini

3、tqueue(structstrqueue*s){if(!s)return0;for(inti=0;iqueue[i]=0;}s->head=-1;s->tail=-1;s->num=0;return1;}boolenqueue(structstrqueue*s,intx)/*进队列,返回0表示失败,返回1表示成功*/{if(!s)return0;if(s->num==MAXSIZE)return0;if(s->head==-1

4、

5、s->tail==-1){s->head=0;s->tail=0

6、;s->queue[s->tail]=x;/*赋值*/s->num=1;return1;}s->tail=(s->tail+1)%MAXSIZE;s->queue[s->tail]=x;s->num++;return1;}booldequeue(structstrqueue*s,int*x)/*出队列,返回0表示失败,返回1表示成功*/{if(!s

7、

8、!x)return0;if(s->num==0)return0;*x=s->queue[s->head];/*赋值*/s->queue[s->head]=0;s->head=(s-

9、>head+1)%MAXSIZE;/*从对头出队列*/s->num--;if(s->num==0){s->head=-1;s->tail=-1;}return1;}intgethead(structstrqueue*s)/*获得队列头数值*/{if(!s)return-1;if(s->num==0)return-1;inthead=0;head=s->queue[s->head];returnhead;}intgettail(structstrqueue*s)/*获得队列尾数值*/{if(!s)return0;inttail=0

10、;if(s->num==0)return-1;tail=s->queue[s->tail];returntail;}intgetqueuelenth(structstrqueue*s)/*获得队列长度*/{if(!s)return0;intlenth=0;lenth=s->num;returnlenth;}boolsearch(structstrqueue*s,intx)/*在队列中查找x是否存在,如果存在返回1,否则返回0*/{if(!s)return0;intheadTemp=s->head;inttailTemp=s->t

11、ail;if(s->num==MAXSIZE){for(inti=0;iqueue[i])return1;}}else{while(headTemp!=tailTemp){if(x==s->queue[headTemp])return1;headTemp=(headTemp+1)%MAXSIZE;}}return0;}intmain(){structstrqueuequeue={NULL,0,0,0};initqueue(&queue);for(inti=1;i<=MAXSIZE;i

12、++){enqueue(&queue,i);}return0;}

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

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

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