当前位置: 首页 > news >正文

LeetCode-Hot100 最小栈实现

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

实现 MinStack 类:

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

https://leetcode.cn/problems/min-stack/description/?envType=study-plan-v2&envId=top-100-liked
// MinStack() 初始化堆栈对象。
type MinStack struct {stack  []intminVal []intlength int
}func Constructor() MinStack {return MinStack{stack:  []int{},minVal: []int{math.MaxInt64},length: 0, // 记录stack的长度,= len(minVal) - 1}
}// void push(int val) 将元素val推入堆栈。
func (this *MinStack) Push(val int) {this.stack = append(this.stack, val)this.length++this.minVal = append(this.minVal, min(val, this.minVal[this.length-1]))}// void pop() 删除堆栈顶部的元素。
func (this *MinStack) Pop() {if len(this.stack) == 0 {return} else {this.stack = this.stack[:this.length-1]this.minVal = this.minVal[:this.length]this.length--}
}// int top() 获取堆栈顶部的元素。
func (this *MinStack) Top() int {return this.stack[this.length-1]
}// int getMin() 获取堆栈中的最小元素。
func (this *MinStack) GetMin() int {return this.minVal[this.length]
}
http://www.dtcms.com/a/418982.html

相关文章:

  • flutter 详细解读
  • 开县做网站汉中网络推广
  • C# TCP - 串口转发
  • 广州 济南网站建设公司 网络服务江苏网站备案流程图
  • Ceph 分布式存储学习笔记(一):介绍、部署与集群配置(上)
  • 先做他个天猫网站产品外观设计图片
  • Accelerate 与 torchrun 分布式训练LLM对比
  • 建设部网站哪里可以报名考监理员优化优化
  • 农家乐怎么做网站上海app开发网站建设
  • 海口建站价格网站建设的物流
  • Leetcode 26. 删除有序数组中的重复项
  • Linux 的文本编辑器vim食用指南
  • 开发实战:从0到1实现Chrome元素截图插件的完整过程
  • ue编辑器视口鼠标消失的问题
  • 【数据结构】多项式的基本运算
  • 在ubuntu下载企业微信
  • 基于Chrome140的FB账号自动化——需求分析环境搭建(一)
  • MCP:cursor、claude code接入chrome-devtools-mcp。
  • 台风“桦加沙”袭击大,盈电智控物联网漏水检测系统为关键场所筑牢“隐形堤坝”!
  • 北京比较好的互联网公司晋中seo排名
  • 高通平台WiFi学习---深入了解 WLAN host crash调试
  • 在 Ubuntu 上可以用几个常用命令查看系统运行情况(内存、CPU、硬盘占用等
  • 子路由器如何设置 路由器LAN-WAN级联的设置方法
  • 【Ubuntu】请问,『kill -9』跟『kill -15』有区别吗?
  • 科网站建设免费查公司的网站
  • SCDN-保护网站安全的有效方案
  • Go 的跨平台编译详解
  • docker命令总结
  • 2、user-service 企业级代码目录结构规范
  • 网站开发的自适应wordpress 万能搜索页