C++实现循环队列
#include <iostream>
using namespace std;
#define MAXSIZE 100
typedef int ElemType;typedef struct {//隊列的創建ElemType *base;int front;int rear;
} SqQueue;bool InitQueue(SqQueue &Q) {//隊列初始化Q.base = new ElemType[MAXSIZE];if (!Q.base) {cout << "開辟空間失敗" << endl;return false;}Q.front = Q.rear = 0;return true;
}bool Push(SqQueue &Q, ElemType e) {//入隊if ((Q.rear + 1) % MAXSIZE == Q.front)return false;Q.base[Q.rear] = e;Q.rear = (Q.rear + 1) % MAXSIZE;return true;
}bool Pop(SqQueue &Q, ElemType &e) {//出隊if (Q.front == Q.rear)return false;e = Q.base[Q.front];Q.front = (Q.front + 1) % MAXSIZE;return true;
}ElemType GetTop(SqQueue Q) {//取隊頭if (Q.front != Q.rear)return Q.base[Q.front];elsecout << "隊列已空" << endl;return false;
}
總結
- 上一篇: 减肥期间可以吃辣椒吗
- 下一篇: C++实现链队列