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 |
'알고리즘 > 자료구조' 카테고리의 다른 글
2차원 Array, List로 변경하기 (0) | 2021.03.10 |
---|---|
크레인 인형뽑기 게임 (0) | 2020.09.09 |
네트워크 (0) | 2020.09.06 |