본문 바로가기
프로그래머 ,백준, 유튜브, 문제

제일 작은 수 제거하기_프로그래머스

by 리승우 2022. 9. 25.

[부족했던 점]

> ArrayList 활용부족

 

 

import java.util.ArrayList;
import java.util.Collections;

public class Hello {

    public int[] solution(int[] arr) {

        //arr의 배열인덱스가 0개 혹은 1개일 경우 -1 return
        if (arr.length == 1) {
            arr[0] = -1;
            return arr;

            //아닐경우 arrayList 생성
        } else {
            ArrayList<Integer> arrayList = new ArrayList<Integer>();

            // arrayList안에 arr배열 값들을 하나씩 넣음
            for (int a : arr) {
                arrayList.add(a);
            }

            //arrayList에서 제일 작은 값 minimum에 넣음
            Integer minimum = Collections.min(arrayList);
            // 그 값을 제거함
            arrayList.remove(minimum);

            //arr배열에서 -1한 길이의 resultArray배열을 만듦
            int[] resultArray = new int[arr.length - 1];

            //arrayList의 인덱스만큼 반복문을 돌며, resultArray에
            //arrayList의 값을 넣음
            for (int i = 0; i < arrayList.size(); ++i) {
                resultArray[i] = arrayList.get(i);
            }

            // 그 값을 리턴함
            return resultArray;
        }
    }

    public static void main(String[] args) {
        Hello test = new Hello();
        test.solution(new int[]{1,2,3,4});

        System.out.println(test.solution(new int[]{4,3,2,1}));


    }
}

 

댓글