首页 > 其他 > 详细

实现栈

时间:2019-12-02 19:04:25      阅读:92      评论:0      收藏:0      [点我收藏+]

栈的特点是先进后出(FILO),我们之前实现了数组,具体在

https://www.cnblogs.com/skychmz/p/11968449.html

现在我们可以利用这个数组类来实现栈。

首先我们新建一个栈的原型,具有基本的方法和变量

public class ArrayStack<E> {

    private Array<E> array;

    public ArrayStack(int capacity){
        array = new Array<>(capacity);
    }

    public ArrayStack(){
        array = new Array<>();
    }

    public int getSize(){
        return array.getSize();
    }

    public boolean isEmpty(){
        return array.isEmpty();
    }

    public int getCapacity(){
        return array.getCapacity();
    }

   
}

然后我们实现操作栈元素的方法

  由于栈先进后出的特性,我们只能往栈顶(数组尾部)加入元素,也就是push方法,通过数组的addLast方法实现

public void push(E e){
        array.addLast(e);
    }

  取元素也一样,只能从栈顶(数组尾部)取出元素,也就是pop方法,通过数组的removeLast方法实现

public E pop(){
        return array.removeLast();
    }

  最后实现查看栈顶元素的方法

public E peek(){
        return array.get(getSize() - 1);
    }

 

实现栈

原文:https://www.cnblogs.com/skychmz/p/11972463.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!