Skip to content

Commit ba08f52

Browse files
author
Jeongwon Na
committed
solution: valid parentheses
1 parent d1adf9a commit ba08f52

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

valid-parentheses/njngwn.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// Time Complexity: O(n), n: s.length
2+
// Space Complexity: O(n), n: s.length (worst case: s="(((((((")
3+
class Solution {
4+
public boolean isValid(String s) {
5+
Stack<Character> bracketStack = new Stack<>();
6+
7+
for (char ch : s.toCharArray()) {
8+
if (ch == '(' || ch == '{' || ch == '[') { // open bracket
9+
bracketStack.push(ch);
10+
} else { // close bracket
11+
if (bracketStack.empty()) {
12+
return false;
13+
}
14+
15+
char sp = bracketStack.pop();
16+
if (!((sp == '(' && ch == ')') || (sp == '{' && ch == '}') || (sp == '[' && ch == ']'))) {
17+
return false;
18+
}
19+
}
20+
}
21+
22+
return bracketStack.empty();
23+
}
24+
}

0 commit comments

Comments
 (0)