올바른 괄호 찾는 문제.
백준과 프로그래머스에서도 많이 풀었던 문제다.
스택을 사용해서 풀면 쉽게 해결된다. 2개이상 연속된 문자열 터트리기와 같은 유형의 문제
class Solution {
public boolean isValid(String s) {
char[] charArray = s.toCharArray();
Deque<Character> dq = new ArrayDeque<>();
for(int i=0; i<charArray.length; i++){
Character peek = dq.peekFirst();
if(peek == null){
dq.addFirst(charArray[i]);
continue;
}
if(charArray[i] == ')' && peek == '('){
dq.pollFirst();
}else if(charArray[i] == ']' && peek == '['){
dq.pollFirst();
}else if(charArray[i] == '}' && peek == '{'){
dq.pollFirst();
}else{
dq.addFirst(charArray[i]);
}
}
if(dq.size() > 0){
return false;
}
return true;
}
}