Explain the stack approach.
Skip to solutionKEEP THE
easyDSA
How do you check for valid/balanced parentheses?
690 views
01
Understand the problem
stackparentheses
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Nudge consolestandby
Stuck? Beam a request up — the console returns a conceptual nudge that guides your logic without spoiling the implementation.
03
Study the solution
Push opening brackets onto a stack; on a closing bracket, pop and verify it matches. The string is valid if every close matches and the stack is empty at the end. O(n) time and space.
Solution ready — 2 min read
Classified // press E to declassify
04
Read the code
Stack-based validator
Run Playgrounddef is_valid(s):
pairs = {')': '(', ']': '[', '}': '{'}
stack = []
for c in s:
if c in '([{':
stack.append(c)
elif not stack or stack.pop() != pairs[c]:
return False
return not stack
# --- demo ---
print(is_valid("()[]{}")) # True
print(is_valid("(]")) # False05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.
Transmission complete // awaiting log
KEEP THE
STREAK ALIVE.
Dossier 14 of 127 decoded in the Data Structures & Algorithms track. One more won't hurt.