[프로그래머스-자바스크립트] 제일 작은 수 제거하기

차슈·2024년 5월 2일
0

프로그래머스

목록 보기
40/64
post-thumbnail

문제

정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.


입출력 예시

arrresult
[4,3,2,1] [4,3,2]
[10] [-1]

풀이

function solution(arr) {
  if (arr.length <= 1) {
    return [-1];
  }
  let min = Math.min(...arr);
  let index = arr.indexOf(min);
  

  arr.splice(index, 1);

  return arr;
}

배열 중 제일 작은 수만 제거해주고 배열을 반환해주는 문제 sort는 쓸 필요가 없다. 일단 Math.min을 이용해서 가장 작을 수를 구했고, splice()를 사용해 index의 1번 부분을 제거했다.
근데, splice(index,2)를 해도 값은 똑같이 나오던데, 이부분은 다시 공부를 해봐야겠다.

0개의 댓글