循環隊列相關代碼。
#include <iostream>
using namespace std;#define Maxsize 100
#define ERROR 0
#define OK 1
typedef int Elemtype;
typedef struct Queue
{Elemtype data[Maxsize];int front;int rear;
}Queue;void Init_Queue(Queue &Q)
{Q.front = Q.rear = -1;
}bool Empty_Queue(Queue& Q)
{if (Q.front == Q.rear){cout << "隊列為空" << endl;;return OK;}return ERROR;
}bool Enter_Queue(Queue& Q, int x)
{if ((Q.rear + 1) % Maxsize == Q.front){cout << "隊列已滿,無法繼續入隊!!!" << endl;return ERROR;}Q.data[Q.rear] = x;Q.rear = (Q.rear + 1) % Maxsize;return OK;
}bool Leave_Queue(Queue& Q, int& x)
{if (Q.rear == Q.front){cout << "隊列為空,無法出隊!!!" << endl;return ERROR;}x = Q.data[Q.front];Q.front = (Q.front + 1) % Maxsize;return OK;}
int main(void)
{return 0;
}