[프로그래머스 - 자바(JAVA)] 44 : 같은 숫자는 싫어

서예진·2024년 6월 27일
0

목차

같은 숫자는 싫어

같은 숫자는 싫어 : Lv.1


▼ 문제

출처 : 프로그래머스 > 코딩테스트 연습 > 스택/큐 > 같은 숫자는 싫어

▼ 내 풀이

import java.util.*;

public class Solution {
    public int[] solution(int[] arr) {
        
        List<Integer> list = new ArrayList<>();
        list.add(arr[0]);
        
        for (int i = 1; i < arr.length; i++) {
            if (arr[i] != arr[i-1]){
                list.add(arr[i]);
            }
        }
        
        int[] answer = new int[list.size()];
        for(int i = 0; i < list.size(); i++) {
            answer[i] = list.get(i);
        }

        return answer;
    }
}
  • 처음에 list로 풀었는데 문제를 다시보니 스택/큐 문제여서 다시 풀어보았다.
  • 스택으로 푸니 더 간단하게 풀 수 있었다.
import java.util.*;

public class Solution {
    public int[] solution(int[] arr) {
        Stack<Integer> stack = new Stack<>();
        stack.push(arr[0]);
        
        for(int i : arr) {
            if(stack.peek() != i){
                stack.push(i);
            }
        }
        
        int[] answer = new int[stack.size()];
        for(int i = answer.length - 1; i >= 0; i--) {
            answer[i] = stack.pop();
        }
        
        return answer;
    }
}```
profile
안녕하세요

0개의 댓글