-
프로그래머스 - 제일 작은 수 제거하기알고리즘 2022. 4. 20.반응형
import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; public class P_11 { // 제일 작은 수 제거 public int[] sol(int[] arr) { int[] ans = new int[arr.length]; if(arr.length <= 1) { ans[0] = -1; return ans; } else { ArrayList<Integer> list = new ArrayList<>(); for(int a : arr) { list.add(a); } Integer x = Collections.min(list); list.remove(x); ans = new int[arr.length-1]; for(int i=0; i<ans.length; i++) { ans[i] = list.get(i); } } return ans; } public static void main(String[] args) { P_11 obj = new P_11(); int[] x = {4,3,2,1}; int[] ans = obj.sol(x); System.out.println(Arrays.toString(ans)); } }
java util 패키지의 클래스를 통한 이용한 방법
-> 빈 배열일 경우를 생각해서 첫 부분에 if문으로 판별
-> Collections 클래스의 min() 메소드 이용하기 위해서 Integer 타입의 Arraylist를 만든다.
-> 만든 Arraylist에 인수로 받아온 arr 배열을 넣는다. (향상된 for문 사용)
-> 리스트에서 제일 작은 수를 구한다. (Collections.min() 사용)
-> remove() 메소드를 이용해서 제일 작은 수를 지운다.
-> 매개변수로 받은 배열보다 한칸이 작은 배열을 만든다.
-> for 반복문을 통해서 제일 작은 수가 제거된 Arraylist를 get() 메소드를 통해서 방금 만든 배열에 넣어준다.
-> return한 배열을 출력 시키고 싶으면 Arrays.toString()를 사용한다.
반응형'알고리즘' 카테고리의 다른 글
프로그래머스 - 정수 내림차순으로 배치하기 (0) 2022.04.23 프로그래머스 - 정수 제곱근 판별 (0) 2022.04.23 프로그래머스 - 최대공약수와 최소공배수 (0) 2022.01.31 프로그래머스 - 짝수와 홀수 (0) 2022.01.30 프로그래머스 - 피보나치 수 (0) 2022.01.26