下载此文档

循环队列.doc


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
循环队列作业报告2—:://sq_Queue#include<iostream>usingnamespacestd;//定义循环队列template<classT>template<classT>classsq_Queue{private:intm;intS;//队列的容量intfront,rear;//队头,队尾指针T*q;//循环队列存储空间首地址public:sq_Queue(int);//构造函数,建立空队列voidprt_sq_Queue();//输出队头,队尾指针并顺序输出队中元素intflag_sq_Queue();//检测顺序队的状态voidins_sq_Queue(T);//在队尾加入元素Tdel_sq_Queue();//在队头删除元素Tread_sq_Queue();//读队头元素};classsq_Queue{private:intm;intS;//队列的容量intfront,rear;//队头,队尾指针T*q;//循环队列存储空间首地址public:sq_Queue(int);//构造函数,建立空队列voidprt_sq_Queue();//输出队头,队尾指针并顺序输出队中元素intflag_sq_Queue();//检测顺序队的状态voidins_sq_Queue(T);//在队尾加入元素Tdel_sq_Queue();//在队头删除元素Tread_sq_Queue();//读队头元素};//建立容量为m的循环队列template<classT>sq_Queue<T>::sq_Queue(intmm){m=mm;q=newT[m];front=rear=m;S=0;//初始状态为空return;}template<classT>voidsq_Queue<T>::prt_sq_Queue(){inti;cout<<"front="<<front<<endl;cout<<"rear="<<rear<<endl;if(S==0){cout<<"队列为空!"<<endl;return;}i=front;do{i=i+1;if(i==m+1)i=1;cout<<q[i-1]<<endl;}while(i!=rear);return;}//检测循环队列的状态template<classT>intsq_Queue<T>::flag_sq_Queue(){if(front==rear&&S==1)return-1;//存储空间已满,返回-1if(S==0)return(0);//队列为空return(1);//正常返回1//队尾加入元素template<classT>voidsq_Queue<T>::ins_sq_Queue(Tx){if((S==1)&&(rear==front))//存储空间已满,上溢{cout<<"Queen_Overflow!"<<endl;return;}rear=rear+1;//队尾指针进一if(rear==m+1)rear=1;q[rear-1]=x;//入队S=1;//入队后的状态为非空return;}}//在队头删除元素template<classT>Tsq_Queue<T>::del_sq_Queue(

循环队列 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wxc6688
  • 文件大小30 KB
  • 时间2020-01-28