Faaez Razeen

Min Stack

  • 1 min read
  • Stacks
  • LC-Medium

3 years ago

Solution

TimeSpaceExplanation
O(1)O(n)TC is O(1) for all operations, space is not extra, it's just for the items stored
class MinStack: def __init__(self): self.stack = [] def push(self, val: int) -> None: min = val if self.stack != [] and self.stack[-1][1] < min: min = self.stack[-1][1] self.stack.append((val, min)) def pop(self) -> None: return self.stack.pop()[0] def top(self) -> int: return self.stack[-1][0] def getMin(self) -> int: return self.stack[-1][1]