实现一个简单的环形队列
一、什么是环形队列?
环形队列的定义
环形队列(Circular Queue)是一种特殊的数据结构,旨在高效地管理和利用存储空间。与传统的线性队列相比,环形队列的主要特点在于,它的队尾和队头可以在同一存储空间中循环使用,从而避免了空间浪费。
环形队列的原理
二、环形队列功能实现
1.构造初始化
CircularQueue(int size) : maxSize(size + 1), front(0), rear(0)
{
data.resize(maxSize);
}
2.入队操作
bool enqueue(const T &item)
{
if (isFull())
{
throw std::runtime_error("Queue is full!");
return false;
}
data[rear] = item;
rear = (rear + 1) % maxSize;
return true;
}