Skip to content

查看js的栈结构
js
Class Stack {
    constructor(...args) {
        this.stack = [...args]
    }
    // 栈顶添加元素
    push(...items) {
        this.stack.push(...items)
    }
    // 删除栈顶元素
    pop() {
        this.stack.pop()
    }
    // 返回栈顶元素
    peek() {
        return this.isEmpty() ? undefined: this.stack[this.size() - 1]
    }
    // 判断栈是否为空
    isEmpty() {
        return this.size() === 0
    }
    // 获取栈长度
    size() {
        return this.stack.length
    }
}

延伸题目

  • 1021.删除最外层的括号:题解

  • 155.最小栈:题解

  • 剑指 Offer 30. 包含min函数的栈:题解

  • 面试题 03.02. 栈的最小值

  • 剑指 Offer 31. 栈的压入、弹出序列:题解

MIT Licensed