正在加载图片...
★功能:初始化队列 输入:队列对象S的指针 输出:成功时返回OK 本幸*幸*本春*春幸幸率*亲幸本*幸率/ int InitQueueSqQueue *Q) Q->base=(Elem Type *)malloc(MAXQSIZE*sizeof(Elem Type)) if(Q->base) exit(OVERFLOW) Q->front=Q->rear=O return OK ★功能:进队列操作 输入:队列对象Q的指针,数据元素e 输出:成功时返回OK *涂客客水*水客水*容水*水水客**客客客水*涂*水 水本水*客水水水*涂 int En Queue(SqQueue *Q, ElemT ype e) if ((Q->rear+1)%MAXQS IZE==Q->front) return ERROR Q->base[Q->rear]=e Q->rear=(Q->rear+1)%MAXQSIZE return 功能:出队操作 输入:队列对象S的指针 输出:成功时返回OK、通过数据元素指针e返回队首元素的值 空队列时返回 ERROR 水客水*客水客水*水客水**客*市水*涂水*称客客水客 int De Queue(SqQueue *Q, Elem Type *e) if (Q->rear==Q->front) return error *e=Q->base [Q->front Q->front=(Q->front+1)%MAXQSIZE return oK/********************************************************** ** 功能:初始化队列 ** ** 输入:队列对象 S 的指针 ** ** 输出: 成功时返回 OK ** **********************************************************/ int InitQueue(SqQueue *Q) { Q->base=(ElemType *) malloc(MAXQSIZE*sizeof(ElemType)); if (!Q->base) exit(OVERFLOW); Q->front=Q->rear=0; return OK; } /********************************************************** ** 功能:进队列操作 ** ** 输入:队列对象 Q 的指针,数据元素 e ** ** 输出: 成功时返回 OK ** **********************************************************/ int EnQueue(SqQueue *Q,ElemType e) { if ((Q->rear+1)%MAXQSIZE==Q->front) return ERROR; Q->base[Q->rear]=e; Q->rear=(Q->rear+1)%MAXQSIZE; return OK; } /******************************************************************* ** 功能:出队操作 ** ** 输入:队列对象 S 的指针 ** ** 输出: 成功时返回 OK、通过数据元素指针 e 返回队首元素的值 ** ** 空队列时返回ERROR ** *******************************************************************/ int DeQueue(SqQueue *Q,ElemType *e) { if (Q->rear==Q->front) return ERROR; *e=Q->base[Q->front]; Q->front=(Q->front+1)%MAXQSIZE; return OK; }
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有