包含min函数的栈

题目:

  包含min函数的栈

题目描述:

  定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。

解题:

#define MIN(a, b) ((a) < (b) ? (a) : (b))
class Solution {
    stack<pair<int, int> > s;
public:
    void push(int value) {
        s.push(pair<int, int>(value, s.empty() ? value : MIN(value, min())));
    }
    void pop() {
        s.pop();
    }
    int top() {
        return s.top().first;
    }
    int min() {
        return s.top().second;
    }
};

系列:


打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦