队列

来源:互联网 发布:国外有类似淘宝吗 编辑:程序博客网 时间:2024/06/15 20:44

今天自己手写了个队列

#define MAXSIZE 10000template<typename DATATYPE>class queue{private:DATATYPE * QUEUE;DATATYPE *pfront,*prear;public:queue();~queue();bool pop();bool push(DATATYPE);DATATYPE front();bool empty();void show(bool);};template<typename DATATYPE> queue<DATATYPE>::queue(){QUEUE=new DATATYPE[MAXSIZE];pfront=prear=&QUEUE[0];}template<typename DATATYPE>queue<DATATYPE>::~queue(){delete QUEUE;}template<typename DATATYPE>bool queue<DATATYPE>::pop(){if(pfront==rear)return false;pfront=(pfront+1)%MAXSIZE;return true;}template<typename DATATYPE>bool queue<DATATYPE>::push(DATATYPE T){prear=(prear+1)%MAXSIZE;if((prear+1)%MAXSIZE==front)return false;QUEUE[prear]=T;return true;}template<typename DATATYPE>DATATYPE queue<DATATYPE>::front(){return QUEUE[pfront];}template<typename DATATYPE>bool queue<DATATYPE>::empty(){if(pfront==prear)return true;return false;}template<typename DATATYPE> void queue<DATATYPE>::show(){DATATYPE *p=pfront;while(p!=prear){std::cout<<*p<<" ";p=(p+1)%MAXSIZE;}}


原创粉丝点击