알고리즘 풀이/프로그래머스
[level1] 프로그래머스 - 제일 작은 수 제거하기(JAVA)
데롱디롱
2021. 8. 31. 17:17
728x90
- 최소값 찾기 => stream이용
Arrays.stream(배열).min().getInt();
- for문을 돌면서 min이 아닌 값을 answer에 넣어준다.
아래 코드는 for문을 돌렸지만, stream을 써서 한 줄에도 가능하다.
ex) Arrays.stream(arr).filter(i -> i != min).toArray();
import java.util.Arrays;
class Solution {
public int[] solution(int[] arr) {
if(arr.length == 1)
return new int[] {-1};
int min = Arrays.stream(arr).min().getAsInt(); // 가장 작은 원소
int index = 0;
int[] answer = new int[arr.length -1];
for (int i = 0; i < arr.length; i++)
if(arr[i] != min)
answer[index++] = arr[i];
return answer;
}
}