首页 > 编程语言 > 详细

数据结构之——基于数组的队列的C++模板实现

时间:2017-06-14 20:51:12      阅读:260      评论:0      收藏:0      [点我收藏+]
template<typename T>
Class Myqueue
{
public:
    Myqueue(int max=50):capa(max),head(0),tail(0),data(nullptr)
    {
        data=new T[capa]
    }
    void enqueue(T &x);//入队
    T front();//队首
    void dequeue();//出队
    int counts();//元素个数
    bool empty();//判空
    bool full();//判满
    ~Myqueue(delete[]data);
private:
    int head;
    int tail;
    int count;
    T* data;
    int capa;
}
template<typename T>
void Myqueue<T>::enqueue(T &x)
{
    if(!full())
    {
        arr[tail]=x;
        count++;
    }
    if(tail==capa)
        tail=0;
    else
        tail++;
}
template<typename T>
bool Myqueue<T>::empty()
{
    return count==0;
}
bool Myqueue<T>::full()
{
    return count==capa;
}
template<typename T>
T MyStack<T>::front()
{
    if(!empty())
        return arr[head];
}
template<typename T>
void MyStack<T>::pop()
{
    if(!empty())
    {
        if(head==capa)
           head=0;
        else
           head++;
        --count;
    }
}
template<typename T>
int MyStack<T>::counts()
{
    return count;
}

 

数据结构之——基于数组的队列的C++模板实现

原文:http://www.cnblogs.com/gaoxiaoyan123/p/7010643.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!