循环队列的实现
来源:互联网 发布:店铺怎么用淘宝客 编辑:程序博客网 时间:2024/06/06 01:23
#include<iostream>using namespace std;#define Size 5typedef struct RCQueue{char RQ[Size];int front;int rear;int cout;}RQueue;void Initiate(RQueue * a){a->cout=0;a->front=0;a->rear=0;}int AppendQueue(RQueue *a,char b){if(a->cout>0 &&a->front==a->rear){cout<<"the queue is full"<<endl;return 0;}else{a->RQ[a->rear]=b;a->rear=(a->rear+1)%Size;a->cout++;}}int DeleteQueue(RQueue *a,char &p){if(a->cout==0){cout<<"the queue is empty"<<endl;return 0;}else{p=a->RQ[a->front];a->front=a->front++;a->cout--;return 1;}}int QueueGet(RQueue *a,char *p){if(a->cout==0){cout<<"the queue is empty"<<endl;return 0;}else{*p=a->RQ[a->front];return 1;}}int QueueNotEmpty(RQueue *a){if(a->cout==0) return 0;else return 1;}void main(){RQueue a;Initiate(&a);AppendQueue(&a,'a');AppendQueue(&a,'b');AppendQueue(&a,'v');AppendQueue(&a,'f');AppendQueue(&a,'g');AppendQueue(&a,'l');//插入此步溢出char p;DeleteQueue(&a,p);cout<<p<<endl;DeleteQueue(&a,p);cout<<p<<endl;DeleteQueue(&a,p);cout<<p<<endl;DeleteQueue(&a,p);cout<<p<<endl;DeleteQueue(&a,p);cout<<p<<endl;cout<<"================"<<endl;if(!QueueNotEmpty(&a)) cout<<"empty!"<<endl; system("pause");}
0 0
- 队列----循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 循环队列的实现
- 黑马程序员——多态
- 【面向对象程序设计之CRC】CRC卡及其应用
- @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
- android--广播、服务、数据库、通知、包原理图
- qt 5.3 安装调试
- 循环队列的实现
- Ajax小示例
- Storing Java objects in MySQL blobs
- 生活丰富
- 当前不会命中断点。源代码与原始版本不同”的问题的有效解决办法
- 算法学习-链表创建,头插法和尾插法
- MATLAB R2012a与vs2010混合编程 error LNK2019
- N个元素取出最大(小)的K个元素
- 客户端防表单重复提交和服务器端session防表单重复提交