알고리즘
[Programmers]제일 작은수 제거하기(난이도:★★★)
BaekGyuHyeon
2022. 5. 16. 19:33
https://programmers.co.kr/learn/courses/30/lessons/12935
코딩테스트 연습 - 제일 작은 수 제거하기
정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1
programmers.co.kr
class Solution {
public int[] solution(int[] arry) {
int[] answer = {};
if(arry.length == 1)
return new int[]{-1};
else{
answer = new int[arry.length-1];
answer[0] = -1;
int idx = 0;
int tmp = Integer.MAX_VALUE;
// 제일 작은수 제일 작은수의 idx
for(int i = 0 ; i < arry.length ;i++){
if(tmp > arry[i]){
idx = i;
tmp = arry[i];
}
}
// 입력한 배열을 복사할때 제일 작은수의 idx는 제외한다.
int idxs = 0;
for(int i = 0 ; i < arry.length; i++){
if(i == idx)
continue;
answer[idxs] = arry[i];
idxs++;
}
}
return answer;
}
}