定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
class Solution {
public:
stack<int> istack;
stack<int> minstack;
void push(int value) {
istack.push(value);
if(minstack.empty()||value<minstack.top())
{
minstack.push(value);
}
}
void pop() {
if(istack.top()<=minstack.top()){
istack.pop();
minstack.pop();
}else{
istack.pop();
}
}
int top() {
return minstack.top();
}
int min() {
return minstack.top();
}
};