📜  在数组javascript中查找最小间隔(1)

📅  最后修改于: 2023-12-03 15:08:02.812000             🧑  作者: Mango

在数组 JavaScript 中查找最小间隔

当我们需要在一个数组中查找最小的相邻数之间的差,我们可以使用以下方法来实现。

方法一:使用 Math.min 和循环

我们可以使用 for 循环来遍历数组,在每个循环中算出当前和下个元素之间的差,并将它们存储在另一个数组中。然后我们可以使用 Math.min 函数查找数组中最小的值。

function findMinGap(arr) {
  let gaps = [];
  for (let i = 1; i < arr.length; i++) {
    gaps.push(arr[i] - arr[i - 1]);
  }
  return Math.min(...gaps);
}

// 使用样例
let arr = [3, 7, 2, 4];
let minGap = findMinGap(arr);
console.log(minGap); // 输出 1
方法二:使用 reduce 方法

我们可以使用 reduce 方法来遍历数组并比较相邻数之间的差,然后返回最小的值。

function findMinGap(arr) {
  return arr.reduce((min, curr, index, arr) => { 
    if (index > 0) {
      min = Math.min(min, curr - arr[index - 1]);
    }
    return min;
  }, Infinity);
}

// 使用样例
let arr = [3, 7, 2, 4];
let minGap = findMinGap(arr);
console.log(minGap); // 输出 1
总结

以上介绍了两种方法来在 JavaScript 中查找数组中最小的相邻数之间的差。这些方法可以帮助我们解决日常工作中遇到的很多问题。