• 大小: 1KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: C/C++
  • 标签: 算法  环形  tag  指针  

资源简介

设计一个环形队列,用front和rear分别作为队头和队尾指针,另外用一个tag表示队列是空(0)还是不空(1),这样就可以用front==rear作为队满的条件。要求设计队列的相关基本运算算法。

资源截图

代码片段和文件信息

#include
using namespace std;
class arrayqueue
{
private:
int maxsize;
int *front;
int *rear;
int *queue;
int  tag;
    int i;
public:

arrayqueue(int size)
{
maxsize=size;
queue=new int[maxsize];
front=rear=queue;
    tag=0;
i=0;
}
~arrayqueue()
{
delete[]queue;
}
void clear()
{
front=rear;
tag=0;
}
bool enqueue(const int item)
{

if(rear==front&&tag==1)
{
cout<<“队列已满“< return false;
}
*rear=item;
i++;
tag=1;
if(i {
rear++;
}
if(i==maxsize)
{
rear=front;
}
return true;
}
bool dequeue(int &item)
{
if(fro

评论

共有 条评论