包含min函数的栈
class MinStack {
public:
stack<int> st;//普通栈
stack<int> stMin;//单调栈
/** initialize your data structure here. */
MinStack() {
}
void push(int x) {
st.push(x);
if(stMin.empty()||stMin.top()>=x)
stMin.push(x);
}
void pop() {
if(st.top()==stMin.top()) stMin.pop();
st.pop();
}
int top() {
return st.top();
}
int getMin() {
return stMin.top();
}
};
有帮助的话可以点个赞,我会很开心的~