zoukankan      html  css  js  c++  java
  • 练习四——顺序栈

    #include <iostream>
    #include <assert.h>
    
    using namespace std;
    class SeqStack{
    private:
        int *elements;
        int top;
        int maxSize;
        void overflowProcess();
    public:
        SeqStack(int sz=50);
        ~SeqStack(){delete []elements;}
        void Push(int &x);
        int Pop(int &x);
        int getTop(int &x);
        int IsEmpty()const {return top==-1;}
        int IsFull()const{return top==maxSize-1;}
        int getSize()const{return top+1;}
        void MakeEmpty(){top=-1;}
        void output();
    };
    
    SeqStack::SeqStack(int sz){
        cout<<sz<<endl;
        elements=new int(sz);
        assert(elements!=NULL);
        top=-1;
        maxSize=sz;
    }
    void SeqStack::overflowProcess(){
        int *newArray=new int[2*maxSize];
        for(int i=0;i<=top;i++){
            newArray[i]=elements[i];
        }
        maxSize+=maxSize;
        delete []elements;
        elements=newArray;
    }
    void SeqStack::Push(int &x){
        if(IsFull()){overflowProcess();}
        elements[++top]=x;
    }
    int SeqStack::Pop(int &x){
        if(IsEmpty()){
            return 0;
        }
        x=elements[top--];
        return x;
    }
    int SeqStack::getTop(int &x){
        if(IsEmpty()){
            return 0;
        }
        x=elements[top];
        return 1;
    }
    void SeqStack::output(){
        cout<<"the top is :"<<top<<endl;
        for(int i=0;i<=top;i++){
            cout<<"i:"<<i<<elements[i]<<endl;
        }
    }
    int main(){
    //    SeqStack s;
        SeqStack seqStack(10);//此时是数组
    //    seqStack->output();
        /*while(1){
            int i;
            cin>>i;
            if(i==0){
                break;
            }
            s.Push(i);
        }
        s.output();*/
    }
    
  • 相关阅读:
    Nexus3.0私服搭建
    JavaScript
    Spring基础
    Hibernate注解
    HTML5
    Apache Tomcat
    Java安装(Ubuntu)
    C++ 日期 & 时间
    C++ 引用
    C++ 指针
  • 原文地址:https://www.cnblogs.com/wangjianupc/p/10587164.html
Copyright © 2011-2022 走看看