qs.cpp

来自「数据结构中所有算法的实现」· C++ 代码 · 共 36 行

CPP
36
字号
#include "d:\cpp\head.h"
#define MAXQSIZE 100
typedef char ElemType;
typedef struct{
  ElemType *base;
  int front;
  int rear;
}SqQueue;
Status InitQueue(SqQueue &Q){
  Q.base=(ElemType*)malloc(MAXQSIZE*sizeof(ElemType));
  if(!Q.base)exit(OVERFLOW);
  Q.front=Q.rear=0;
  return OK;
}
Bool EmptyQueue(SqQueue Q){
  if(Q.front==Q.rear)return OK;
  else return FALSE;
}
Bool FullQueue(SqQueue Q){
  if(++Q.rear % MAXQSIZE==Q.front) return OK;
  else return FALSE;
}
Status EnQueue(SqQueue &Q,ElemType e){
  if(FullQueue(Q))return ERROR;
  Q.base[Q.rear]=e;
  //*(Q.base+Q.rear)=e;   //yi ge yang
  Q.rear=(Q.rear+1)%MAXQSIZE;
  return OK;
}//EnQueue
Status DeQueue(SqQueue &Q,ElemType &e){
  if(EmptyQueue(Q))return ERROR;
  e=Q.base[Q.front];
  Q.front=(++Q.front)%MAXQSIZE;
  return OK;
}//DeQueue

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?