Fundamentals · Easy · Free
Check balanced parentheses using a stack.
FresherFundamentalsData Structures & Algorithms
Balanced parentheses
Push opening brackets; on closing, match top of stack. Empty stack at end means valid.
java
boolean isValid(String s) {
Deque<Character> st = new ArrayDeque<>();
for (char c : s.toCharArray()) {
if (c == '(' || c == '[' || c == '{') st.push(c);
else {
if (st.isEmpty()) return false;
char o = st.pop();
if (c == ')' && o != '(') return false;
if (c == ']' && o != '[') return false;
if (c == '}' && o != '{') return false;
}
}
return st.isEmpty();
}Map open→close for cleaner code in follow-ups.