C++ class实现顺序队列(完整代码)
Posted Wecccccccc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ class实现顺序队列(完整代码)相关的知识,希望对你有一定的参考价值。
代码如下:
#include <iostream>
using namespace std;
typedef int ElemType;
class SeqQueue {
public:
SeqQueue(int Queuesize = 100) {
base = new ElemType[Queuesize];
front = 0;
rear = 0;
size = Queuesize;
};
~SeqQueue() {
delete[] base;
};
int Empty_Queue();
int En_Queue(ElemType e);
int De_Queue(ElemType &e);
int Front_Queue(ElemType &e);
private:
ElemType *base;
int front;
int rear;
int size;
};
int SeqQueue::Empty_Queue() {
return (front == rear);
}
int SeqQueue::En_Queue(ElemType e) {
if (((rear + 1) % size) != front) {
rear = (rear + 1) % size;
base[rear] = e;
return 1;
} else
return 0;
}
int SeqQueue::De_Queue(ElemType &e) {
if (rear != front) {
front = (front + 1) % size;
e = base[front];
return 1;
} else
return 0;
}
int SeqQueue::Front_Queue(ElemType &e) {
if (rear != front) {
e = base[(front + 1) % size];
return 1;
} else
return 0;
}
int main() {
SeqQueue q(5);
q.En_Queue(13);
q.En_Queue(23);
int x;
q.De_Queue(x);
cout << x << endl;
q.Front_Queue(x);
cout << x << endl;
cout << q.Empty_Queue() << endl;
return 0;
}
测试结果:
以上是关于C++ class实现顺序队列(完整代码)的主要内容,如果未能解决你的问题,请参考以下文章