我们需要编写一个包含数字数组的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