实现数据结构中的单链表和堆栈功能,并自己给出测试案例

来源:百度知道 编辑:UC知道 时间:2024/09/22 23:31:54
哪位高人给做一下这个C++程序!!重谢!!

这是节点的头文件Node.h

template<typename T> class Node{
public:
Node(T t):item(t),next(0){}
void setNext(Node* t){next=t;}
Node* getNext(){return next;}
T getItem(){return item;}
private:
T item;
Node* next;
};

这是链表的头文件LinkedList.h

#include "Node.h"
#include <iostream>
using namespace std;

template<typename T> class LinkedList{
public:
LinkedList():length(0),head(0),tail(0){};
~LinkedList();
int getLength(){return length;}
void add(T t);
T get(int i);
void insert(int i,T t);
void del(int i);
void display();
private:
Node<T>* head;
Node<T>* tail;
int length;
};

template <typename T> void LinkedList<T>::add(T t){
if(head==0){
head=new Node<T>(t);
tail=head;
}
else {
Node<T>* q=new Node<T>(t);