Min Stack LeetCode solution in Python

1
# Runtime: 117 ms (Top 35.13%) | Memory: 18.5 MB (Top 10.03%)
2
class MinStack:
3

4
def __init__(self):
5
self.stack = []
6

7
def push(self, val: int) -> None:
8
if not self.stack:
9
self.stack.append((val, val))
10
else:
11
self.stack.append((val, min(val, self.stack[-1][1])))
12

13
def pop(self) -> None:
14
if self.stack:
15
self.stack.pop()
16

17
def top(self) -> int:
18
if self.stack:
19
return self.stack[-1][0]
20
else:
21
return None
22

23
def getMin(self) -> int:
24
if self.stack:
25
return self.stack[-1][1]
26
else:
27
return None

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0