双端队列,首尾都能进行入队和出队,所以我为了方便没有设置头结点,也不知道不设头节点是对是错!!
代码如下:
头文件head.h
/***************************************
*这个node节点可以反复使用
*本来,我想用继承,但无法实现。又在类里定义node,但操作麻烦,前后指针操作都要使用函数
*最后确定用 友员
*修改时间: 2013 09 25 23:50
****************************************/
#ifndef HEAD
#define HEAD
#include<iostream>
using namespace std;
//template<typename T> class DoubleList;
template<typename T> class Deque;
template <typename T>
class LinkNode
{
public:
friend class Deque<T>;
LinkNode();
LinkNode( const T &elem);
//~LinkNode();用不到
private:
T data;
LinkNode *pPre;
LinkNode *pNext;
};
template <typename T>
LinkNode<T>::LinkNode():pPre(NULL),pNext(NULL)
{
//用于初始化头结点,data用不到。
}
template <