在 JavaScript 中,无需排序即可查找数组中最大数和最小数的差值
我们有一个数字数组,其排列顺序完全随机。我们的任务是编写一个函数,该函数接收这样一个数字数组,并返回其中最大数和最小数的差值,但不允许对数组进行排序。
因此,让我们为此函数编写代码:
我们将使用 `Array.prototype.reduce()` 函数从数组中选取最小和最大的数字,然后返回它们的差值。此函数的代码如下:
示例
const arr = [23, 65, 67, 23, 2, 6, 87, 23, 45, 65, 3, 234, 3];
const findDifference = arr => {
if(!arr.length){
return 0;
}
const creds = arr.reduce((acc, val) => {
let { max, min } = acc;
if(val > max){
max = val;
};
if(val < min){
min = val;
};
return { max, min };
}, {
max: -Infinity,
min: Infinity
});
return creds.max - creds.min;
};
console.log(findDifference(arr));输出
控制台输出将是:
232
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP