LeetCode:70.最小栈

目录

1.最小栈


1.最小栈

最小栈可以通过一个辅助栈来解决,辅助栈只有当前插入值比栈顶元素小的时候才会插入,这样辅助栈的栈顶元素就是栈中的最小值

cpp 复制代码
class MinStack {
    stack<int> stk;
    stack<int> minstack;
public:
    MinStack() {
        minstack.push(INT_MAX);
    }
    
    void push(int val) {
        stk.push(val);
        minstack.push(min(minstack.top(), val));
    }
    
    void pop() {
        stk.pop();
        minstack.pop();
    }
    
    int top() {
        return stk.top();
    }
    
    int getMin() {
        return minstack.top();
    }
};
相关推荐
坚持编程的菜鸟2 小时前
LeetCode每日一题——有效的字母异位词
c语言·算法·leetcode
小糖学代码2 小时前
STL的list模拟实现(带移动构造和emplace版本)
c语言·数据结构·c++·windows·list
jikiecui2 小时前
信奥崔老师:常用编译命令g++的基本使用
算法
shenghaide_jiahu3 小时前
leetcode430:扁平化多级双向链表
数据结构·链表
失散133 小时前
软件设计师——03 数据结构(上)
数据结构·软考·软件设计师
Chance_to_win3 小时前
数据结构之双向链表
数据结构·链表
乌萨奇也要立志学C++3 小时前
【洛谷】二叉树专题全解析:概念、存储、遍历与经典真题实战
数据结构·c++·算法
小谢在学习3 小时前
旋转图像
算法
北京地铁1号线4 小时前
机器学习笔试选择题:题组2
人工智能·算法·机器学习