Python描述 LeetCode 剑指 Offer 30. 包含min函数的栈
Python描述 LeetCode 剑指 Offer 30. 包含min函数的栈
大家好,我是亓官劼(qí guān jié ),在【亓官劼】公众号、CSDN、GitHub、B站等平台分享一些技术博文,主要包括前端开发、python后端开发、小程序开发、数据结构与算法、docker、Linux常用运维、NLP等相关技术博文,时光荏苒,未来可期,加油~
如果喜欢博主的文章可以关注博主的个人公众号【亓官劼】(qí guān jié),里面的文章更全更新更快。如果有需要找博主的话可以在公众号后台留言,我会尽快回复消息.
本文原创为【亓官劼】(qí guān jié ),请大家支持原创,部分平台一直在恶意盗取博主的文章!!! 全部文章请关注微信公众号【亓官劼】。
题目
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。
示例:
MinStack minStack = new MinStack();
minStack.push(-2);
minStack.push(0);
minStack.push(-3);
minStack.min(); --> 返回 -3.
minStack.pop();
minStack.top(); --> 返回 0.
minStack.min(); --> 返回 -2.
提示:
- 各函数的调用总次数不超过 20000 次
解题思路
额外使用一个栈记录各个位置的最小值,同步push和pop。
class MinStack:def __init__(self):"""initialize your data structure here."""self.stack = []self.min_stack = []def push(self, x: int) -> None:self.stack.append(x)self.min_stack.append(min(x,self.min_stack[-1] if self.min_stack else 2**31))def pop(self) -> None:self.stack.pop()self.min_stack.pop()def top(self) -> int:return self.stack[-1] def min(self) -> int:return self.min_stack[-1]# Your MinStack object will be instantiated and called as such:
# obj = MinStack()
# obj.push(x)
# obj.pop()
# param_3 = obj.top()
# param_4 = obj.min()
Python描述 LeetCode 剑指 Offer 30. 包含min函数的栈相关推荐
- 《LeetCode力扣练习》剑指 Offer 30. 包含min函数的栈 Java
<LeetCode力扣练习>剑指 Offer 30. 包含min函数的栈 Java 一.资源 题目: 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调 ...
- 【LeetCode】剑指 Offer 30. 包含min函数的栈
[LeetCode]剑指 Offer 30. 包含min函数的栈 文章目录 [LeetCode]剑指 Offer 30. 包含min函数的栈 一.辅助栈 一.辅助栈 解题思路: 普通栈的 push() ...
- 剑指 Offer 30. 包含min函数的栈 (python实现)
剑指 Offer 30. 包含min函数的栈 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). 示例 ...
- 【简洁写法】剑指 Offer 30. 包含min函数的栈
立志用最少的代码做最高效的表达 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). 示例: MinSt ...
- 剑指offer——30.包含min函数的栈
题目: 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)). 知识点: 这种需要持续输出最小或最大的数的解决办法之一:引入辅助栈 注意: 无 代码实现 ...
- 剑指Offer 30.包含 min 函数的栈(Python)
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.top.push 及 pop 的时间复杂度都是 O(1). # 例子: MinStack minSta ...
- 【算法】剑指 Offer 30. 包含min函数的栈
文章目录 1.概述 2.分析 3. 链表法 4. 双栈法 1.概述 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/bao-han-minhan ...
- 剑指 Offer 30. 包含min函数的栈(python3编写)
目录 1.题目描述: 2.方法: 思路: 代码: 1.题目描述: 2.方法: 思路: 思路来源:https://leetcode-cn.com/problems/bao-han-minhan-shu- ...
- 剑指 Offer 30. 包含min函数的栈
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min.push 及 pop 的时间复杂度都是 O(1). 示例: MinStack minStack = n ...
最新文章
- windows server 更改默认服务端口
- [转帖]linux文件描述符文件/etc/security/limits.conf
- Lady Layton with Math(杜教筛)
- linux用mame玩游戏,Ubuntu下用kxmame运行精彩的街机游戏
- php栏目树,php生成无限栏目树
- python常用代码总结-python常用代码
- 在线阅读各版本android系统源代码
- 机器学习极好的入门学习视频推荐
- spring cloud入门组件教程
- 计算机一直显示配置更新失败怎么办,电脑更新新系统的时候出现配置更新失败问题怎么办...
- html css文字标题特效,用CSS做一个流光溢彩的文字特效
- h5 换脸 php,DIY海报H5案例|换脸show颜值
- 7.2_gd-sgd
- xilinx ku115上pciex1 的眼图
- 全球首个视觉导航物流机器人
- VMware 随win10自动启动与关闭
- Python中的单例模式的几种实现方式的及优化
- 京东抢购脚本使用方法+代码更新(超详细)
- Facebook推出简体中文语言版本
- (转)如何根据RGB值来判断这是种什么颜色?