面试题 - 用 java代码编写堆栈

作者: 小怪兽打葫芦娃 | 来源:发表于2017-07-13 13:24 被阅读156次

    Android程序员面试宝典

    public class Stack {
    
        int[] data;
        int maxSize;
        int top;
        public Stack(int maxSize) {
            this.maxSize = maxSize;
            data = new int[maxSize];
            top = -1;
        }
        /**
         * 依次加入数据
         * @param data 要加入的数据
         * @return 添加是否成功
         */
        public boolean push(int data) {
            if(top+1== maxSize) {
                System.out.println("栈已满!");
                return false;
            }
            this.data[++top] = data;
            return true;
        }
        /**
         * 从栈中取出数据
         * @return 取出的数据
         */
        public int pop() throws Exception{
            if(top==-1) {
                throw new Exception("栈已空!");
            }
            return this.data[top--];
        }
        public static void main(String[] args) throws Exception{
            Stack stack=new Stack(1000);
            stack.push(1);
            stack.push(2);
            stack.push(3);
            stack.push(4);
            stack.push(5);
            while(stack.top>=0)
            {
                System.out.println(stack.pop());
            }
        }
    
    }
    

    相关文章

      网友评论

        本文标题:面试题 - 用 java代码编写堆栈

        本文链接:https://www.haomeiwen.com/subject/mluwhxtx.html