使用数组实现固定大小的栈入栈和出栈的操作

使用数组实现一个入栈和出栈的操作

  • 代码如下所示:
/**
 * @author: karl
 * @date: 2019/5/27
 * @Description: 使用数组实现入栈和出栈的操作
 **/
public class ArrayStack {
    /**
     * 定义一个String的数组
     */
    private String[] sts;
    /**
     * 栈元素的个数
     */
    private int count;
    /**
     * 栈的大小
     */
    private int size;

    /**
     * 初始化
     *
     * @param n 栈对象
     */
    public ArrayStack(int n) {
        this.sts = new String[n];
        this.size = n;
        this.count = 0;
    }

    /**
     * 入栈的动作
     *
     * @return
     */
    public boolean push(String data) {
        if (count == size) {
            //栈已经满
            return false;
        }
        //赋值
        sts[count] = data;
        //下标加+1
        ++count;
        return true;
    }

    /**
     * 出栈
     */
    public String popping() {
        if (count == 0) {
            //说明栈内为空
            return null;
        }
        //取小标减1的数据 count是栈中元素的个数从1开始 下标是从0开始
        String data = sts[count - 1];
        --count;
        return data;
    }
}

发布了59 篇原创文章 · 获赞 30 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_33249725/article/details/90603501