diff --git a/LeetCode/medium/mini_stack_155.py b/LeetCode/medium/mini_stack_155.py new file mode 100644 index 0000000..21e1e1f --- /dev/null +++ b/LeetCode/medium/mini_stack_155.py @@ -0,0 +1,20 @@ +class MinStack: + + def __init__(self): + self.stack = [] + self.min_tracer = [] + + def push(self, value: int) -> None: + self.stack.append(value) + val = min(value, self.min_tracer[-1] if self.min_tracer else value) + self.min_tracer.append(val) + + def pop(self) -> None: + self.stack.pop() + self.min_tracer.pop() + + def top(self) -> int: + return self.stack[-1] + + def getMin(self) -> int: + return self.min_tracer[-1]