#define MAXQSIZE 100
typedef struct {
QElemType *base;
int front;
int rear;
}SqQueue;
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
void exit(int value)
typedef int Status;
typedef char QElemType;
Status InitQueue(SqQueue &Q)
{//構造一個空佇列Q
Q.base=new QElemType[MAXQSIZE];
if(!Q.base) exit(0);
Q.front=Q.rear=0;
return OK;
}
Status EnQueue(SqQueue &Q,QElemType e)
{//插入元素e為Q的新的隊尾元素
if((Q.rear+1)%MAXQSIZE==Q.front)
return ERROR;
Q.base[Q.rear]=e;
Q.rear=(Q.rear+1)%MAXQSIZE;
return OK;
}
Status DeQueue(SqQueue &Q,QElemType &e)
{//洗掉Q的隊頭元素,用e回傳其值
if(Q.front==Q.rear)return ERROR;
e=Q.base[Q.front];
Q.front=(Q.front+1)%MAXQSIZE;
return OK;
}
int QueueLength(SqQueue Q)
{//回傳Q的元素個數,即佇列的長度
return(Q.rear-Q.front+MAXQSIZE)%MAXQSIZE;
}
Status GetHead(SqQueue Q)
{//回傳Q的隊頭元素,不修改隊頭指標
if(Q.front!=Q.rear)
return Q.base[Q.front];
}
uj5u.com熱心網友回復:
#define MAXQSIZE 100typedef char QElemType;
typedef struct {
QElemType *base;
int front;
int rear;
}SqQueue;
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
void exit(int value);
typedef int Status;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/23975.html
標籤:數據庫及相關技術
上一篇:這是什么原因???
下一篇:味兒無
