时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
Pop出栈:
和push操作相对应,判断stackData栈顶元素是否与stackMin栈顶元素相同(stackMin中元素 <= stackData元素),如果相等,两个栈都弹出栈顶元素,不过不相等就stackData弹出
代码如下:
class Solution { public: stack<int> stack,stack_min; void push(int value) { stack.push(value); if(stack_min.empty()) stack_min.push(value); else if(value < stack_min.top()) stack_min.push(value); } void pop() { if(stack.top() == stack_min.top()) stack_min.pop(); stack.pop(); } int top() { return stack.top(); } int min() { return stack_min.top(); } };
附上堆栈stack的基本操作:
原文:https://www.cnblogs.com/whiteBear/p/12535360.html