概述
3.7 一维数组a[m]存放循环队列的元素,设置变量num表示当前队列中元素的个数,判断队列的状态为’空’,还是’满’。试给出此循环队列满的条件,并编写入队和出队算法
#include<iostream>
#include<queue>
#define MaxSize 3
using namespace std;
struct SeqQueue
{
int a[MaxSize];//存放队列元素的数组
int front,rear;//队头和队尾指针
};
void Judge(SeqQueue q,int m){
if((q.rear)%m==q.front)//队满
q.front++;//队满时出队一个元素
q.rear=(q.rear+1)%m;
if(q.rear==q.front) cout<<"队列又满了";
}
//注:元素入队,rear后移;元素出队,front后移
int main()
{
SeqQueue q;
q.front=q.rear=0;
for(int i=0;i<MaxSize;i++)
q.rear=(q.rear+1)%MaxSize;//循环队列满
//q.front=(q.front+1)%MaxSize;//出队
Judge(q,MaxSize);
return 0;
}
最后
以上就是动人电源为你收集整理的3.7的全部内容,希望文章能够帮你解决3.7所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复