# 用js刷剑指offer(包含min函数的栈)

题目描述

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

牛客网链接

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]
}

猜你喜欢

转载自www.cnblogs.com/dpnlp/p/yongjs-shua-jian-zhioffer-bao-hanmin-han-shu-de-zh.html
今日推荐