本文主要是介绍46 - 算法 - Leetcode-155-最小栈,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
//更新当前的状态 不要漏掉了
class MinStack {
public:
/** initialize your data structure here. */
stack<int> temStack;
int min=INT_MAX; //当前最小值
MinStack() {
}
void push(int val) {
if(val <= min) min = val;
temStack.push(min);
temStack.push(val);
}
void pop() {
temStack.pop();
temStack.pop();
if(!temStack.empty())
{
min = getMin();
}
else
{
min = INT_MAX;
}
}
int top() {
return temStack.top();
}
int getMin() {
int temp = temStack.top();
temStack.pop();
int res = temStack.top();
temStack.push(temp);
return res;
}
};
这篇关于46 - 算法 - Leetcode-155-最小栈的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!