news 2026/6/10 5:33:09

力扣刷题:最小栈

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣刷题:最小栈

题目:
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。

实现 MinStack 类:

MinStack() 初始化堆栈对象。
void push(int val) 将元素val推入堆栈。
void pop() 删除堆栈顶部的元素。
int top() 获取堆栈顶部的元素。
int getMin() 获取堆栈中的最小元素。

示例 1:

输入:
[“MinStack”,“push”,“push”,“push”,“getMin”,“pop”,“top”,“getMin”]
[[],[-2],[0],[-3],[],[],[],[]]

输出:
[null,null,null,null,-3,null,0,-2]

解释:
MinStack minStack = new MinStack();
minStack.push(-2);
minStack.push(0);
minStack.push(-3);
minStack.getMin(); --> 返回 -3.
minStack.pop();
minStack.top(); --> 返回 0.
minStack.getMin(); --> 返回 -2.

解析:
使用两个栈,一个做为主栈,一个作为辅助栈,辅助栈中每次存放的是主栈中入栈元素的最小值

具体代码:

varMinStack=function(){this.stack=[]this.min_stack=[Infinity]};/** * @param {number} val * @return {void} */MinStack.prototype.push=function(val){this.stack.push(val)this.min_stack.push(Math.min(val,this.min_stack.at(-1)))};/** * @return {void} */MinStack.prototype.pop=function(){this.stack.pop()this.min_stack.pop()};/** * @return {number} */MinStack.prototype.top=function(){returnthis.stack.at(-1)};/** * @return {number} */MinStack.prototype.getMin=function(){returnthis.min_stack.at(-1)};/** * Your MinStack object will be instantiated and called as such: * var obj = new MinStack() * obj.push(val) * obj.pop() * var param_3 = obj.top() * var param_4 = obj.getMin() */
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:21:37

如何编写一个简单的服务器应用程序?

编写简单服务器应用程序的步骤 服务器应用程序允许客户端通过网络请求访问资源或服务。以下内容涵盖从基础概念到实际实现的完整流程,使用Python语言和Flask框架为例,便于快速理解。 理解服务器基础 服务器本质是一个长期运行的程序,监听特…

作者头像 李华
网站建设 2026/6/10 5:48:29

U盘数据失踪案:专业手法助你寻回失踪文件!

在数字化时代,U盘作为便携式存储设备,广泛应用于我们的日常生活与工作中。然而,有时我们会遇到一种棘手的情况:U盘明明显示有空间被占用,但打开后却看不到任何文件。这种情况不仅令人困惑,更让人担心存储在…

作者头像 李华
网站建设 2026/6/10 14:19:11

如何判断硬件解码器或者软件解码器

方法一: 根据源码frameworks/av/media/libstagefright/MediaCodecList.cpp bool MediaCodecList::isSoftwareCodec(const AString &componentName) {return componentName.startsWithIgnoreCase("OMX.google.")|| componentName.startsWithIgnoreCa…

作者头像 李华
网站建设 2026/6/10 14:21:42

EmotiVoice语音合成系统权限管理与访问控制设置

EmotiVoice语音合成系统权限管理与访问控制设置 在虚拟偶像直播中突然出现陌生声音,或企业语音助手被恶意调用生成虚假音频——这些并非科幻情节,而是真实存在的AI安全风险。随着EmotiVoice等高表现力TTS系统普及,仅需几秒样本即可克隆音色的…

作者头像 李华
网站建设 2026/6/10 9:05:18

EmotiVoice语音合成在广播剧制作中的创意应用

EmotiVoice语音合成在广播剧制作中的创意应用 在声音叙事的艺术世界里,广播剧始终占据着独特的位置。它没有画面的辅助,全靠语言、语调和音效构建出一个完整的世界。而正是这种“纯粹”,让配音演员的表现力成为成败的关键——一句颤抖的低语、…

作者头像 李华