[알고리즘] Stack을 이용한 올바른 괄호 확인
2024. 8. 13. 22:11ㆍWebBack/알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/12909
import java.util.Stack;
class Solution {
boolean solution(String s) {
boolean answer = true;
Stack stack = new Stack();
try{
for(int i = 0; i < s.length(); i++){
char ch = s.charAt(i);
if(ch == '('){
stack.push('(');
} else if(ch==')'){
stack.pop();
}
answer = stack.empty() ? true : false;
}
} catch(Exception e){
return answer = false;
}
return answer;
}
}
Stack을 자꾸 인식하지 못해서 혹시나해서 import를 시도해봤는데 적용이 된다...???
덕분에 쉽게 해결이 가능했다.
stack이라는 단순한 구조를 이용했다. '('는 stack에 넣고 ')'는 stack에서 하나씩 빼는 식으로 구현했다. 그래서 비어있으면 올바른 괄호이고 아니면 틀렸다고 반환한다. 다만, 문제는 stack에 아무것도 없는데 빼는 상황이 발생한다는 것이다. 그래서 예외 처리를 하였다.
'WebBack > 알고리즘' 카테고리의 다른 글
[알고리즘] 평균 구하기 (0) | 2024.07.17 |
---|---|
[배열과 리스트] 숫자의 합 구하기 (0) | 2024.07.16 |
[알고리즘, 자료구조] 자연정렬된 키워드를 검색(Arrays.binarySearch) (0) | 2024.06.24 |
[알고리즘, 자료구조] Arrays.binarySearch에 의한 이진검색 (0) | 2024.06.24 |
[알고리즘, 자료구조] 이진 검색 (0) | 2024.06.22 |