收藏 分销(赏)

数据结构中循环队列的实现.doc

上传人:仙人****88 文档编号:11234085 上传时间:2025-07-09 格式:DOC 页数:2 大小:12.61KB 下载积分:10 金币
下载 相关 举报
数据结构中循环队列的实现.doc_第1页
第1页 / 共2页
数据结构中循环队列的实现.doc_第2页
第2页 / 共2页
本文档共2页,全文阅读请下载到手机保存,查看更方便
资源描述
#include<stdio.h> #include<iomanip.h> #include<malloc.h> #include<iostream> #define MAXSIZE 10 typedef struct { int num;//数据成员// int *base;//基地址// int front; int rear; int s; }SeQueue; int InitQueue(SeQueue &Q)//构造空列表// { Q.base=(int*)malloc(MAXSIZE*sizeof(int)); if(!Q.base) exit (1); Q.front=0; Q.rear=0; return 1; } int QueueEmpty(SeQueue Q)//判队空// { if(Q.rear==Q.front) return 1; else return 0; } void EnQueue(SeQueue &Q,int e)//入队// { if(Q.front==(Q.rear+1)%MAXSIZE) cout<<"error"<<endl; Q.rear=Q.rear+1; if(Q.rear==Q.num+1) Q.rear=1; Q.base[Q.rear-1]=e; Q.s=1; } int DeQueue(SeQueue &Q)//出队// { int e; if(Q.front=Q.rear) return 0; Q.front=Q.front+1; if(Q.front==Q.num+1) Q.front=1; e=Q.base[Q.front-1]; if(Q.front==Q.rear) Q.s=0; return e; } void print_SeQueue(SeQueue &Q) { int i; cout<<"front="<<Q.front<<endl; cout<<"rear="<<Q.rear<<endl; if(Q.s==0) {cout<<"队列空!"<<endl;} i=Q.front; do{ i=i+1; if(i==Q.num+1) i=1; cout<<Q.base[i-1]<<endl; }while(i!=Q.rear); } int main() { int i; SeQueue S; i=InitQueue(S); cout<<"输出队中所有元素:"<<endl; EnQueue(S,1); EnQueue(S,2); EnQueue(S,3); EnQueue(S,4); EnQueue(S,5); print_SeQueue(S); cout<<"入队后再输出所有元素为:"<<endl; print_SeQueue(S); cout<<"输出出队元素为:"<<endl; cout<<DeQueue(S)<<endl; return 0; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服