1 / 10
文档名称:

实验四队列存储与操作.docx

格式:docx   大小:67KB   页数:10
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实验四队列存储与操作.docx

上传人:pppccc8 2020/10/1 文件大小:67 KB

下载得到文件列表

实验四队列存储与操作.docx

文档介绍

文档介绍:实验四队列存储与操作实验目的1、 掌握队列顺序存储结构(循环队列)及实现及操作2、 掌握队列的链接存储结构及实现及操作实验内容1、 建立一个空顺序存储结构队列;对已建立的队列进行插入、删除、取队头元素等基本操作。2、 建立一个空链式存储结构队列;对已建立的队列进行插入、删除、取队头元素等基本操作。详细设计:1、顺序队列的实现:#include<iostreani>usingnainespcicestd;constintSize-100;typedefcharDataType;classCirQueue{public:CirQueue(){front=rear=0;//构造队列,初始化一个空的循环队列,front和rear指向}'CirQueue(){}voidEnQueue(DataTypex){if((rear+l)%Size==front){cout«,z队列已经满f,z«endl;return;rear=(rear+1)%Size;队尾指针在循环的意义I、加data[rear]二x;cout«x«,/已入队,?«endl;return;}DattiTypeGetQueue()取队头{if(isEmpty()){cout«,/队列为空z,«endl;return0;}inti;i=(front+l)%Size;returndata[i];}DataTypeDeQueue(){if(isEmpty0){cout<<"队列为空"<<endl;return0;}front=(front+l)%Size;队头指针在循环的意义下加returndata!front]:}intisEmpty()是否为空{if(front==rear){return1;}else{return0;}}private:DataTypedata[Size];intfront,rear:};intliiainOCirQueuea;intindex;DataTypetemp;do{c()ut〈〈"**********************************"〈〈endl;COUt«Z/l>cout«,z2>cout«,/3scout«,,Kcout«,z5x入队操作"<<endl;取队头操作z/«endl;出队操作,/«endl;判断队列是否为空"«endl:退出"<<endl;cin»index;if(index二二5){return0;}switch(index){case1:cout«〃请输入要入队的元#r«endl;cin»temp;a・EnQueue(temp);break;case2:temp=a・GetQueue();if(temp!=0){c()ut<<"队头的元素为"<<tei叩<<""<<endl;}break;case3:temp-ci・DeQueue();if(temp!-0){cout<<"出队的元素为"<<temp<<"*«endl;}break;case4:booltemp;temp=a・isFiiiptyO;if(temp){cout«,/空队"<<endl;)else(cout«,z非空队,?«endl;break;}while(index);return0;}2、链队列的实现:#include<iostreain>usingnamespace