欢迎访问我的GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
本篇概览
- 最近运气不错,在LeetCode上白捡一道送分题,官方设定的难度是中等,然而此题难度放在简单的题库中都是垫底的存在,对于刷题数太少的欣宸而言,这简直就是力扣的馈赠,建议大家也不要错过,花上几分钟将其拿下
- 不唠嗑了,下面咱们一起来刷之
- 为了提起您的兴趣,这里提前剧透一下:
- 用最简单的数据结构-数组,来存储数据,代码整体非常简单,适合新手阅读
- 执行用时执行用时3毫秒, 在所有 Java 提交中击败了100%的用户(包括官方),有下图为证

题目说明
- 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。
- 实现 MinStack 类:
- MinStack() 初始化堆栈对象。
- void push(int val) 将元素val推入堆栈。
- void pop() 删除堆栈顶部的元素。
- int top() 获取堆栈顶部的元素。
- int getMin() 获取堆栈中的最小元素。
- 输入:
- ["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.
复制代码 <ol>-231 |