思路:
class MinStack {
public:
MinStack() { }
void push(int val) {
_st.push(val);
if( _minST.empty() || val<=_minST.top()){
_minST.push(val);
}
}
void pop() {
if(_st.top()==_minST.top()){
_minST.pop();
}
_st.pop();
}
int top() {
return _st.top();
}
int getMin() {
return _minST.top();
}
private:
stack<int> _st;
stack<int> _minST;
};