-
제일 작은 수 제거하기!
문제 설명
정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.
제한 조건
- arr은 길이 1 이상인 배열입니다.
- 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.
입출력 예
문제 풀이
function solution(arr) { if (arr.length <= 1) return [-1]; arr.splice(arr.indexOf(Math.min(...arr)), 1); return arr; }
풀이입니다.
받아오는 arr 인자 배열의 길이가 0 이나 1 이면 [-1]을 리턴해주고
그 외에는 arr.splice 를 이용하여 arr에 가장 작은 수를 찾아서 자르고 나머지를 리턴해줍니다.
가장 작은 수의 인덱스를 indexOf 를 이용하여 찾아줍니다.
다른 사람들의 풀이
function solution(arr) { if (arr.length === 1 ) { return [-1] } const minValue = Math.min.apply(null, arr) const index = arr.findIndex(value => value === minValue) arr.splice(index, 1) return arr }
'코딩 기록 > 자바스크립트 알고리즘' 카테고리의 다른 글
(자바스크립트 알고리즘) 최대공약수와 최소공배수 - kimyang-sun (0) 2020.10.11 (자바스크립트 알고리즘) 정수 제곱근 판별 - kimyang-sun (0) 2020.10.11 (자바스크립트 알고리즘) 행렬의 덧셈 - kimyang-sun (0) 2020.10.11 (자바스크립트 알고리즘) x만큼 간격이 있는 n개의 숫자 - kimyang-sun (0) 2020.10.11 (자바스크립트 알고리즘) 같은 숫자는 싫어 - kimyang-sun (0) 2020.03.24 댓글