美文网首页
设计一个支持增量操作的栈

设计一个支持增量操作的栈

作者: 面向全麦面包编程 | 来源:发表于2020-07-16 12:39 被阅读0次

    1381. 设计一个支持增量操作的栈

    class CustomStack {
        private int[] a;
        private int size;
    
        public CustomStack(int maxSize) {
            a = new int[maxSize];
            size = 0;
        }
    
        public void push(int x) {
            if (size == a.length) return;
            a[size++] = x;
        }
    
        public int pop() {
            if (size == 0) return -1;
            return a[--size];
        }
    
        //栈顶的元素在a[--size],栈底的元素在a[0]
        public void increment(int k, int val) {
            for (int i = 0; i < size && i < k; i++) {
                a[i] += val;
            }
        }
    }
    

    Tips:

    • 本质就是一个用数组实现的定容栈,leetcode上的解答怎么这么复杂,不知道他们怎么想的

    相关文章

      网友评论

          本文标题:设计一个支持增量操作的栈

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