zoukankan      html  css  js  c++  java
  • 基于数组的栈(Java)

    package com.rao.linkList;
    
    
    /**
     * @author Srao
     * @className ArrayStack
     * @date 2019/12/3 13:41
     * @package com.rao.linkList
     * @Description 基于数组的栈
     */
    public class ArrayStack {
        private String[] items; //栈中的数据
        private int count;  //当前栈中元素的个数
        private int n;  //栈的大小
    
        /**
         * 初始化一个大小为n的栈
         * @param n
         */
        public ArrayStack(int n) {
            items = new String[n];
            count = 0;
            this.n = n;
        }
    
        /**
         * 入栈
         * @param s
         * @return 成功返回true,失败返回false
         */
        public Boolean push(String s){
            if (count >= n){
                return false;
            }
            items[count] = s;
            count++;
            return true;
        }
    
        /**
         * 出栈
         * @return 返回出栈的元素
         */
        public String pop(){
            if (count <= 0){
                return null;
            }
            String s = items[count-1];
            count--;
            return s;
        }
    
        public static void main(String[] args) {
            ArrayStack arrayStack = new ArrayStack(10);
            arrayStack.push("11");
            arrayStack.push("aa");
            arrayStack.push("@@");
            System.out.println(arrayStack.pop());
            System.out.println(arrayStack.pop());
            System.out.println(arrayStack.pop());
        }
    }

    在定义栈时,给栈定义一个表示栈中数据多少的属性会很有用

  • 相关阅读:
    图书管理系统
    关键路径
    最短路径

    最小生成树、最短路径
    Huffman编码
    LA 3401
    UVA 10881
    OI 刷题记录——每周更新
    4396: [Usaco2015 dec]High Card Wins
  • 原文地址:https://www.cnblogs.com/rao11/p/11976364.html
Copyright © 2011-2022 走看看