숫자 배열을 받는 JavaScript 함수를 작성해야 합니다. 함수는 배열의 가장 큰 요소와 가장 작은 요소 사이의 차이를 찾아야 합니다.
조건은 원래 배열에서 더 작은 요소가 더 큰 요소보다 먼저 나타나야 한다는 것입니다.
예:
다음 숫자 배열을 고려하십시오 -
const arr = [2, 5, 6, 12, 1];
이 배열의 경우 함수는 10을 출력해야 합니다.
배열의 가장 큰 요소와 가장 작은 요소는 각각 12와 1이지만 1은 12보다 먼저 나타나지 않으므로 이 질문의 목적을 위해 유효한 작은 숫자로 간주할 수 없습니다.
따라서 우리의 함수는 차이를 반환합니다 -
12 - 2 = 10
예시
다음은 코드입니다 -
const arr = [2, 5, 6, 12, 1]; const findLargestDifference = (arr = []) => { if (arr.length <= 1){ return -1; }; let min = arr[0]; let diff = 0; for (let i = 1; i < arr.length; i++) { if (arr[i] > min && (arr[i] - min > diff)) { diff = arr[i] - min; } else if (arr[i] <= min) { min = arr[i]; } } if (diff <= 0){ return -1 }; return diff; }; console.log(findLargestDifference(arr));
출력
다음은 콘솔의 출력입니다 -
10