155. 最小栈 - 力扣(LeetCode)

大佬思路图

代码

python 复制代码
# encoding = utf-8
# 开发者:Alen
# 开发时间: 14:51 
# "Stay hungry,stay foolish."

class MinStack(object):

    def __init__(self):
        self.stack = []
        self.minStack = []

    def push(self, val):
        """
        :type val: int
        :rtype: None
        """
        self.stack.append(val)
        val = min(val, self.minStack[-1] if self.minStack else val)
        self.minStack.append(val)

    def pop(self):
        """
        :rtype: None
        """
        self.stack.pop()
        self.minStack.pop()

    def top(self):
        """
        :rtype: int
        """
        return self.stack[-1]

    def getMin(self):
        """
        :rtype: int
        """
        return self.minStack[-1]

# Your MinStack object will be instantiated and called as such:
# obj = MinStack()
# obj.push(val)
# obj.pop()
# param_3 = obj.top()
# param_4 = obj.getMin()

结果

解题步骤:

相关推荐
mit6.8242 小时前
正反两次扫描|单调性cut
算法
Yzzz-F2 小时前
牛客小白月赛127 E
算法
大锦终2 小时前
递归回溯综合练习
c++·算法·深度优先
Keep__Fighting2 小时前
【神经网络的训练策略选取】
人工智能·深度学习·神经网络·算法
码农水水2 小时前
蚂蚁Java面试被问:混沌工程在分布式系统中的应用
java·linux·开发语言·面试·职场和发展·php
晚风吹长发2 小时前
初步了解Linux中的动静态库及其制作和使用
linux·运维·服务器·数据结构·c++·后端·算法
sin_hielo2 小时前
leetcode 3453(二分法)
算法
坚持不懈的大白3 小时前
Leetcode学习笔记
笔记·学习·leetcode
风之歌曲3 小时前
c++高精度模板
c++·算法·矩阵