해당 게시글은 [Java] 어서와! 자료구조 알고리즘은 처음이지?https://programmers.co.kr/learn/courses/13577를 간략히 요약한 게시글이며 모든 출처는 해당강의에 있습니다
최솟값을 제거한 나머지 배열을 출력하는 문제입니다.
처음 정렬을 해야하는 줄 알고 있었던 것만 제외하면 쉬운 풀이였습니다.
정렬을 시도하는 도중 깨달은 것이 있다면 Collections.reverseOrder()
는 int[]
은 불가능하고 Integer[]
만 가능하므로 박싱을 진행 한 후 정렬을 해야 합니다.
강의와 저의 풀이가 모두 동일하였습니다.
[-1]
을 반환합니다.Stream
을 이용하여 최솟값을 구합니다.import java.util.*;
class Solution {
public int[] solution(int[] arr) {
//길이가 1이면 빈 배열
if(arr.length == 1) return new int[] {-1};
//최솟 값 구하기
int min = Arrays.stream(arr).min().getAsInt();
//최솟 값 제거
int[] answer = Arrays.stream(arr).filter(i -> i != min).toArray();
return answer;
}
}