#include<iostream>
using namespace std;
const int M = 100;
template <class T>
class CirQueue
{
public:
CirQueue();
~CirQueue(){}
void EnQueue(T x);
T DeQueue();
T GetQueue();
int Empty();
private:
T data[M];
int front, rear;
};
template<class T>
CirQueue<T>::CirQueue()
{
front = rear = 0;
}
template<class T>
void CirQueue<T>::EnQueue(T x)
{
if ((rear + 1) % M == front)
throw "Overflow";
data[rear] = x;
rear = (rear + 1) % M;
}
template<class T>
T CirQueue<T>::DeQueue()
{
if (rear == front)
throw"underflow";
x = data[front];
front = (front + 1) % M;
return x;
}
template<class T>
T CirQueue<T>::GetQueue()
{
if (rear == front)
throw"underflow";
return data[front];
}
template<class T>
int CirQueue<T>::Empty()
{
if (front == rear)
return 1;
else
return 0;
}
队列的简单代码
最新推荐文章于 2024-07-25 23:03:21 发布