package stack;
import java.util.Stack;
public class MinStack {
private Stack dataStack = new Stack<>();
private Stack minStack = new Stack<>();
public void push(int num) {
dataStack.push(num);
if (minStack.peek() == null) {
minStack.push(num);
} else if (num <= minStack.peek()) { // if =, then not put
minStack.push(num);
}
}
public Integer pop() {
Integer popValue = dataStack.pop();
if (popValue.compareTo(minStack.peek()) == 0) {
minStack.pop();
}
return popValue;
}
public Integer getMin() {
return minStack.peek();
}
}