풀이 |
1. 스택을 생성한다 - 단어를 하나씩 넣어주기 위해 2. 인덱스를 생성한다 - 단어를 하나씩 훑어보기 위해서 3. while문을 사용해서 단어를 하나씩 훑어본다 - 만약 스택이 비어있으면 단어를 push한 후 index++, continue - 위의 과정을 거치지 않으면 peek값을 뽑으려 하기 때문에 컴파일 에러 - 스택의 가장 위의 값(직전 단어)과 현재 단어가 일치하면 pop후 index++ - 둘 다 해당되지 않는다면 push후 index++ 4. while문을 빠져나왔을 때, 스택이 비어있으면 단어가 모두 삭제된 것으로 return 1, 아니면 return 0 |
회고 |
. |
코드 (접은 글) |
더보기
import java.util.*;
class Solution
{
public int solution(String s)
{
Stack<Character> stack = new Stack<>();
int index = 0;
while(index < s.length()) {
if(stack.isEmpty()){
stack.push(s.charAt(index));
index++;
continue;
}
if(stack.peek() == s.charAt(index)){
stack.pop();
index++;
continue;
}
stack.push(s.charAt(index));
index++;
}
if (stack.isEmpty()){
return 1;
}
return 0;
}
}
'코테' 카테고리의 다른 글
[java] [PCCP 기출문제] 1번 / 동영상 재생기 (1) | 2024.09.25 |
---|---|
[java] 프로그래머스스쿨 혼자서 하는 틱택토 (1) | 2024.09.16 |
[java] 귤 고르기 (1) | 2024.01.11 |
[python] 프로그래머스스쿨 더 맵게 (0) | 2023.12.14 |
[Java] 심화 1단계 (1) | 2023.11.13 |