zoukankan      html  css  js  c++  java
  • [数据结构]-数组实现栈

    package com.cn.jichu.day08;
    
    public class Stack<E> {
    
        /**
         * 数组
         */
        private E[] data;
        /**
         * 当前容纳元素个数
         */
        private int size;
        /**
         * 指针
         */
        private int pointer;
    
        public Stack(int capacity) {
            data = (E[])new Object[capacity];
            size = capacity;
            pointer = 0;
        }
    
        public Stack() {
           this(10);
        }
    
        /**
         * 入栈
         * @param e
         */
        public void push(E e){
            if(pointer == size){
                throw  new IllegalArgumentException("大哥,栈要溢出来了");
            }
    
            data[pointer] = e;
            pointer ++;
        }
    
        /**
         * 出栈
         * @return
         */
        public E pop(){
            if(pointer==0){
                throw  new IllegalArgumentException("大哥,栈中无元素哟");
            }
            E e = data[pointer-1];
            data[pointer-1] = null;
            pointer --;
            return e;
        }
    
        /**
         * 获取栈顶元素
         * @return
         */
        public E peek(){
            if(pointer==0){
                throw  new IllegalArgumentException("大哥,栈中无元素哟");
            }
            E e = data[pointer-1];
            return e;
        }
    
    
        @Override
        public String toString(){
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.append("Stack [");
            for(int i=0;i<data.length;i++){
               stringBuilder.append(data[i] + " ");
            }
            stringBuilder.append("]");
            return stringBuilder.toString();
        }
    
    
    }
  • 相关阅读:
    JZOJ.2117. 【2016-12-30普及组模拟】台风
    团队合作
    长沙游记
    统计
    html....
    OI之路
    三鑫普及组模拟赛
    牛顿迭代法
    台风
    gcd
  • 原文地址:https://www.cnblogs.com/anny0404/p/10650682.html
Copyright © 2011-2022 走看看