2023年6.队列的顺序存储结构循环队列.pdf
《2023年6.队列的顺序存储结构循环队列.pdf》由会员分享,可在线阅读,更多相关《2023年6.队列的顺序存储结构循环队列.pdf(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、队列的顺序存储结构-循环队列(一)#include#include#define OK 1#define ERROR 0 typedef int Status;/Status 是函数的类型,其值是函数结果状态代码,如 OK等 typedef int QElemType;#define MAXQSIZE 100/最大队列长度(对于循环队列,最大队列长度要减 1)typedef struct QElemType*base;/初始化的动态分配存储 空间 int front;/头指针,若队列不空,指向队列头元素 int rear;/尾指针,若队列不空,指向队列尾元素的下一个位置 SqQueue;Sta
2、tus InitQueue(SqQueue&Q)/构造一个空队列 Q,该队列预定义大小为 MAXQSIZE/请补全代码 Q.base=(QElemType*)malloc(MAXQSIZE*sizeof(QElemType);if(!Q.base)return ERROR;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.baseQ.rear=e;Q.rear=(Q.rear+1
3、)%MAXQSIZE;return OK;Status DeQueue(SqQueue&Q,QElemType&e)/若队列不空,则删除 Q的队头元素,用 e 返回其值,并返回 OK;否则返回 ERROR/请补全代码 if(Q.front=Q.rear)return ERROR;e=Q.baseQ.front;Q.front=(Q.front+1)%MAXQSIZE;return OK;Status GetHead(SqQueue Q,QElemType&e)/若队列不空,则用 e 返回队头元素,并返回 OK,否则返回 ERROR/请补全代码 if(Q.front=Q.rear)return
4、ERROR;e=Q.baseQ.front;return OK;int QueueLength(SqQueue Q)/返回 Q的元素个数/请补全代码 return(Q.rear+MAXQSIZE-Q.front)%MAXQSIZE;Status QueueTraverse(SqQueue Q)/若队列不空,则从队头到队尾依次输出各个队列元素,并返回 OK;否则返回 ERROR.int i;i=Q.front;if(Q.front=Q.rear)printf(The Queue is Empty!);/请填空 else printf(The Queue is:);while(i Q.rear)/
5、请填空 printf(%d,Q.basei);/请填空 i=i+1;/请填空 printf(n);return OK;int main()int a;SqQueue S;QElemType x,e;if(InitQueue(S)/判断顺序表是否创建成功,请填空 printf(A Queue Has Created.n);while(1)printf(1:Enter n2:Delete n3:Get the Front n4:Return the Length of the Queuen5:Load the Queuen0:ExitnPlease choose:n);scanf(%d,&a);s
6、witch(a)case 1:scanf(%d,&x);if(!EnQueue(S,x)printf(Enter Error!n);/判断入队是否合法,请填空 else printf(The Element%d is Successfully Entered!n,x);break;case 2:if(!DeQueue(S,e)printf(Delete Error!n);/判断出队是否合法,请填空 else printf(The Element%d is Successfully Deleted!n,e);break;case 3:if(!GetHead(S,e)printf(Get Head
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 队列 顺序 存储 结构 循环
限制150内