题解 | #包含min函数的栈#
包含min函数的栈
http://www.nowcoder.com/practice/4c776177d2c04c2494f2555c9fcc1e49
包含min的栈
思路:每个节点保存当前以及之前进栈的最小值
class Solution {
public:
stack<pair<int,int>> s;
void push(int value) {
if(s.empty())
s.push({value,value});
else
s.push({value,::min(value,s.top().second)});//思路:每个节点保存当前以及之前进栈的最小值
}
void pop() {
s.pop();
}
int top() {
return s.top().first;
}
int min() {
return s.top().second;
}
};