Skip to content
Algorithm.js
📚 단일 패턴

155. Min Stack

각 요소와 함께 현재 최소값을 저장하여 O(1) 시간에 최소값을 반환하는 스택 구현하기

Oct 1, 2025 — stack

문제 설명

풀이 아이디어

구현

class MinStack {
private stack : number[][]
constructor() {
this.stack = [];
}
push(val: number): void {
if (this.stack.length === 0) {
this.stack.push( [ val, val ])
} else {
const min = Math.min( val, this.stack.at(-1)[1] );
this.stack.push([ val, min ]);
}
}
pop(): void {
this.stack.pop();
}
top(): number {
return this.stack.at(-1)[0];
}
getMin(): number {
return this.stack.at(-1)[1];
}
}
/**
* Your MinStack object will be instantiated and called as such:
* var obj = new MinStack()
* obj.push(val)
* obj.pop()
* var param_3 = obj.top()
* var param_4 = obj.getMin()
*/