先进后出栈 数据结构很简单

栈在生活中的实例特别常见,比如说火车进入终点站,车厢一依次进入,当出站时车头变车尾,车尾变车头。但是这个比喻漏掉栈的一个重要特性,接下来这个例子作为补充,办公室里使用一个文件盒存放待处理的简历,优先处理最上面的,这就涉及到了栈的第二个特性,栈顶。

先进后出栈 数据结构很简单_第1张图片

 class XStack{
    public int maxSize;
    public int stackArray[];
    public int top;


    public XStack(int maxSize){
    this.maxSize=maxSize;
    stackArray=new int[maxSize];
    top=-1;//此时栈为空
    }

    //push 推进,将元素推入
    public void push(int num){
        stackArray[++top]=num;
    }
    //出栈
    public int pop(){
        return stackArray[top--];

    }

    //插看栈顶元素
    public int check(){
        return stackArray[top];
    }

    //判空
    public boolean isEmpty(){
        if(top==-1){
            return true;
        }
        return false;
    }

    //判满
    public boolean isFull(){
       if(top==maxSize-1){
           return true;
       }    
       return false;
    }

}
//在这个类中,将Stack实例化

public class XStackApplication{

    public static void main(String[] args){
        XStack xStack=new XStack(6);
        xStack.push(10);    
xStack.push(11);
xStack.push(12);
xStack.push(13);
xStack.push(14);


    System.out.println(xStack.check());
    System.out.println(xStack.isFull());
    }
}

代码运行截图
先进后出栈 数据结构很简单_第2张图片

你可能感兴趣的:(数据结构)