![[Java] 올바른 괄호 - Lv2 프로그래머스 스택/큐](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyiFVz%2Fbtr3U0Q3UVv%2FhLrY4o65TJtCkkE2a2Tvyk%2Fimg.png)
[Java] 올바른 괄호 - Lv2 프로그래머스 스택/큐코딩테스트/프로그래머스2023. 3. 17. 06:37
Table of Contents
728x90
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/12909
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
큐를 활용해서 다음 괄호값과 비교하여 풀었고
첫 괄호가 ")"이거나, 큐에 입력되는 값이 ")"일 경우 false처리를 해 주었다.
class Solution {
boolean solution(String s) {
if(s.charAt(s.length()-1) == '(') return false;
Queue<Character> queue = new LinkedList<>();
queue.add(s.charAt(0));
for(int i=1; i<s.length(); i++) {
if(!queue.isEmpty() && queue.peek() != s.charAt(i)) {
queue.poll();
}
else {
if(s.charAt(i) == ')') return false;
else queue.add(s.charAt(i));
}
}
if(queue.isEmpty()) return true;
else return false;
}
}
728x90
300x250
@mag1c :: 꾸준히 재밌게
2023.04 ~ 백엔드 개발자의 기록
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!