包含min的函數棧
定義棧的數據結構,請在該類型中實現一個能夠得到棧最小元素的min函數。
public class Solution {
private Stack<Integer> stack=new Stack<>();
private Stack<Integer> minStack=new Stack<>();
private int min=Integer.MAX_VALUE;
public void push(int node) {
stack.push(node);
if(min>node)min=node;
minStack.push(min);
}
public void pop() {
stack.pop();
minStack.pop();
min=minStack.peek();
}
public int top() {
return stack.peek();
}
public int min() {
return min;//用min不保險,可能還沒有往裏放元素,用peek更好。
}
}