美文网首页数据结构与算法
实现一个包含min函数的栈(O(1)的时间复杂度)

实现一个包含min函数的栈(O(1)的时间复杂度)

作者: 而立之年的技术控 | 来源:发表于2019-12-21 15:22 被阅读0次
微信图片_20191221152107.jpg
class Solution:
    def __init__(self):
        self.stack = []
        self.min_stack = []
    def push(self, node):
        # write code here
        self.stack.append(node)
        if self.min_stack == []:
            self.min_stack.append(node)
        else:
            if node <= self.min_stack[-1]:
                self.min_stack.append(node)
            else:
                self.min_stack.append(self.min_stack[-1])
    def pop(self):
        # write code here
        if self.stack:
            self.min_stack.pop()
            return self.stack.pop()
    def top(self):
        # write code here
        if self.stack:
            return self.stack[-1]
    def min(self):
        # write code here
        if self.min_stack:
            return self.min_stack[-1]

相关文章

  • 26.包含min的栈

    题目:要求实现一个包含min函数的栈,且要求push,pop,min的时间复杂度都是O(1)思路: 每次入栈操作要...

  • 【34】包含min函数的stack

    【34】包含min函数的stack 题目: 实现一个包含min函数的栈,min和push,pop都是o(1)时间 ...

  • 2.栈相关操作

    1.通过两个栈来实现一个队列 2.设计含有最小函数min()的栈,要求min,push,pop,的时间复杂度都为o...

  • 栈的min方法

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

  • 包含min函数的栈

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

  • 包含min的栈

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

  • 20:包含min函数的栈

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

  • 牛客-剑指0ffer-包含min函数的栈

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

  • 【剑指Offer】020——包含min函数的栈 (栈)

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

  • 20包含min函数的栈

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

网友评论

    本文标题:实现一个包含min函数的栈(O(1)的时间复杂度)

    本文链接:https://www.haomeiwen.com/subject/pdsgnctx.html