首页 > 代码库 > 数据结构之——基于链表的栈的模板实现
数据结构之——基于链表的栈的模板实现
//节点的结构 template<typename T> struct node { T data; node<T>* next; node():next(nullptr){}; node(T t):data(t),next(nullptr){}; } //模板类构造栈类 template<typename T> Class MyStack { public: stack(); void push(T &x); T top(); void pop(); int counts(); bool empty(); ~stack(); private: int count; node<T>* head; } template<typename T> void MyStack<T>::push(T &x) { node<T>* pnode= new node<T>(x);//申请空间 pnode->next=head->next; head->next=pnode; count++; } template<typename T> bool MyStack<T>::empty() { return count==0; } template<typename T> T MyStack<T>::top() { if(!empty()) return head->next->dada; } template<typename T> void MyStack<T>::pop() { if(!empty()) { node<T>* del=head->next; head->next=haed->next->next; delete del; count--; } } template<typename T> int MyStack<T>::counts() { return count; }
数据结构之——基于链表的栈的模板实现
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。