diff --git a/data_structures/Stacks/__init__.py b/data_structures/Stacks/__init__.py new file mode 100644 index 000000000..1c6488562 --- /dev/null +++ b/data_structures/Stacks/__init__.py @@ -0,0 +1,23 @@ +class Stack: + + def __init__(self): + self.stack = [] + self.top = 0 + + def is_empty(self): + return self.top == 0 + + def push(self, item): + if self.top < len(self.stack): + self.stack[self.top] = item + else: + self.stack.append(item) + + self.top += 1 + + def pop(self): + if self.is_empty(): + return None + else: + self.top -= 1 + return self.stack[self.top]