getMin
by Paco86
JavaScript
class MyStack{
constructor(){
this.dataArray = [];
this.minArray = [];
}
push(item){
this.dataArray.push(item);
if(this.minArray.length === 0 || this.minArray[this.minArray.length-1] >= item){
this.minArray.push(item);
}
}
pop(){
let popItem = this.dataArray.pop();
if(popItem === this.minArray[this.minArray.length-1]){
this.minArray.pop()
}
return popItem;
}
getMin(){
return this.minArray[this.minArray.length-1];
}
}
let myStack = new MyStack();
myStack.push(2);
myStack.push(3);
myStack.push(1);
myStack.push(6);
myStack.push(0);
console.log(myStack.getMin());