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

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上的解答怎么这么复杂,不知道他们怎么想的
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。