알고리즘/자료구조
올바른 괄호
e-pd
2020. 8. 6. 23:20
https://programmers.co.kr/learn/courses/30/lessons/12909
코딩테스트 연습 - 올바른 괄호
괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 ()() 또는 (())() 는 올바른 괄호입니다. )()( 또는 (()( 는 올바르지 않은 괄호�
programmers.co.kr
문자를 담을 Character stack을 선언한다.
풀이 입력받은 문자에서 (를 발견하면 push
발견하지 못했다면 pop
예외케이스로 처음부터 ( 가 포함되지않는 케이스도 생각해본다
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import java.util.Stack;
import java.util.EmptyStackException;
class Solution {
boolean solution(String s) {
Stack<Character> stack = new Stack<>();
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == '(') {
stack.push('(');
} else {
if (stack.isEmpty()) {
return false;
}
stack.pop();
}
}
return stack.isEmpty();
}
}
|
cs |