题目描述

定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。

牛客网链接

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

js代码

const stack1 = []
const stack2 = []
function push(node)
{
    // write code here
    if (JSON.stringify(stack1) === '[]'){
        stack1.push(node)
        stack2.push(node)
    }else{
        if (node < stack2[stack2.length-1]){
            stack2.push(node)
        }
        stack1.push(node)
    }
}
function pop()
{
    // write code here
    let res = stack1.pop()
    if (res === stack2[stack2.length-1]) stack2.pop()
    return res
}
function top()
{
    // write code here
    return stack1[stack1.length-1]
}
function min()
{
    // write code here
    return stack2[stack2.length-1]
}
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄