设计一个容量为4的循环队列,进行如下操作, 并显示各步骤操作后队列的情况: 1、队列初始化; 2、1-2-3入
发布网友
发布时间:2022-06-02 12:39
我来回答
共1个回答
热心网友
时间:2023-10-20 10:27
#define MAXQUE 4+1
int Queue[MAXQUE];
int front,rear;
void InitQue()
{
front=rear=0;
for(int i=0;i<MAXQUE;i++)
{
Queue[i]=0;
}
}
bool Push(int x)
{
//如果队列已满,则返回false
if((rear+1)%MAXQUE==front)
return false;
Queue[rear]=x;
rear=(rear+1)%MAXQUE;
return true;
}
bool Pop(int& x)
{
//如果为空队列,返回false
if(rear==front)
return false;
x=Queue[front];
front=(front+1)%MAXQUE;
return true;
}
//输出队列
void PrintQueue()
{
cout<<"The Current Queue Is: ";
for(int i=front;i!=rear;i=(i+1)%MAXQUE)
cout<<Queue[i]<<" ";
cout<<endl;
}
int main()
{
InitQue();
PrintQueue();
Push(1);
Push(2);
Push(3);
PrintQueue();
int x;
Pop(x);
Pop(x);
PrintQueue();
Push(4);
Push(5);
Push(6);
PrintQueue();
Push(7);
PrintQueue();
return 0;
}