zoukankan      html  css  js  c++  java
  • 用类模板实现对任何类型的数据进行堆栈进行存取操作。

    #include "iostream"
    using namespace std;
    
    template <class T>
    class stack{
    public:
        stack(){
            L=NULL;
        }
        void push(T x);
        T pop();
    private:
        struct Node{
            T data;
            Node *next;
        } *L;
    };
    template <class T>
    void stack<T>::push(T x){
        Node *p=(Node*)malloc(sizeof(Node));
        p->data=x;
        p->next=L;
        L=p;
    }
    
    template <class T>
    T stack<T>::pop(){
        if(L!=NULL){
            Node *x=L;
            L=L->next;
            return x->data;
        }
        else{
            return NULL;
        }
            
    }
    
    void main(){
     stack<int> ss;
     ss.push(1);
     ss.push(2);
     ss.push(3);
        
     cout<<ss.pop()<<endl;
     cout<<ss.pop()<<endl;
     cout<<ss.pop()<<endl;
    
     if(!ss.pop())
         cout<<"堆栈为空!!!"<<endl;
     getchar();
     getchar();
    }
  • 相关阅读:
    如何使用Log4j
    HDU 1114
    老鼠与毒药问题
    HDU 1065
    HDU 1301(MST)
    HDU 1078
    HDU 2159
    删除字符问题(贪心)
    正整数分解为几个连续自然数之和
    OpenJudge
  • 原文地址:https://www.cnblogs.com/593213556wuyubao/p/3053683.html
Copyright © 2011-2022 走看看