본문 바로가기

Plo Algorithm

프로그래머스Lv1 같은 숫자는 싫어

같은 숫자는 싫어

import java.util.*;

public class Solution {
    public int[] solution(int []arr) {
        //ArrayList 객체를 하나 생성
        ArrayList<Integer> arrayList = new ArrayList<>();
        //arr을 arrayList에 할당해줄 반복문 생성
        for (int i = 0 ; i < arr.length ; i++){                         
        if (i == 0){                                           
            //1번째 값과 비교하며 나아가기 위하여 미리 1번째 값을 할당해준다. 
            arrayList.add(arr[0]);                              
        }else{
            //arrayList.size()-1을 index한 객체를 가져와 arr[i]와 비교
            //같지않을 경우에만 할당해준다.
            if(arrayList.get(arrayList.size()-1) != arr[i]){    
                arrayList.add(arr[i]);                          
                }
            }
        }   
        //정답타입의 객체 생성
        int[] answer = new int[arrayList.size()];                       
        
        //반복하며 객체를 할당.
        for (int i = 0; i < arrayList.size(); i++){                     
                answer[i] = arrayList.get(i);
            }
        return answer;
    }
}

ArrayList의 미리 size선언을 해주지 않아도 되는 특성을 이용한 문제풀이