Python/data_structures/stacks/balanced_parentheses.py
2019-10-05 10:14:13 +05:00

24 lines
673 B
Python

from .stack import Stack
__author__ = "Omkar Pathak"
def balanced_parentheses(parentheses):
""" Use a stack to check if a string of parentheses is balanced."""
stack = Stack(len(parentheses))
for parenthesis in parentheses:
if parenthesis == "(":
stack.push(parenthesis)
elif parenthesis == ")":
if stack.is_empty():
return False
stack.pop()
return stack.is_empty()
if __name__ == "__main__":
examples = ["((()))", "((())", "(()))"]
print("Balanced parentheses demonstration:\n")
for example in examples:
print(example + ": " + str(balanced_parentheses(example)))