Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class MinStack {
- Stack<Integer> stack = new Stack<>();
- Stack<Integer> minStack = new Stack<>();
- public void push(int x) {
- stack.push(x);
- if(minStack.isEmpty()){
- minStack.push(x);
- return;
- }
- if(minStack.peek() > x){
- minStack.push(x);
- return;
- }else{
- minStack.push(minStack.peek());
- return;
- }
- }
- public void pop() {
- if(!stack.isEmpty()){
- stack.pop();
- minStack.pop();
- }
- }
- public int top() {
- if(!stack.isEmpty()){
- return stack.peek();
- }else{
- return -1;
- }
- }
- public int getMin() {
- if(!minStack.isEmpty()){
- return minStack.peek();
- }else{
- return -1;
- }
- }
- }
Add Comment
Please, Sign In to add comment