包含min函数的栈_牛客题霸_牛客网
使用了两个队列,其中s2里放最小元素,而且多少与s1对齐,如果发现s1的顶小于当前s2的顶,就加入s2中,如果不小于也将s2的顶再放一次,最顶上的元素,绝对是最小的元素
class Solution {
public:stack<int>s1;stack<int>s2;void push(int value) {s1.push(value);if(s2.empty() || s2.top()>value)s2.push(value);elses2.push(s2.top());}void pop() {s1.pop();s2.pop();}int top() {return s1.top();}int min() {return s2.top();}
};