* @param {number} val * @return {void}
(val, { minStack } = this)
| 22 | * @return {void} |
| 23 | */ |
| 24 | push(val, { minStack } = this) { |
| 25 | this.stack.push(val); /* Space O(N) */ |
| 26 | |
| 27 | const isMinEmpty = !minStack.length; |
| 28 | const hasNewMin = val <= this.top(minStack); |
| 29 | const canAddMin = isMinEmpty || hasNewMin; |
| 30 | if (canAddMin) minStack.push(val); /* Space O(N) */ |
| 31 | } |
| 32 | |
| 33 | /** |
| 34 | * @return {void} |
no test coverage detected