用 JavaScript 在等差数列中查找缺失数
等差数列
等差数列 (AP) 或等差数列是一组数字,其中连续元素之间的差值保持不变。
例如,数列 5、7、9、11、13...
假设我们有一个按顺序表示等差数列元素的数组。但是不知何故,数列中的一个数字丢失了。我们需要编写一个 JavaScript 函数,该函数将第一个且唯一的参数作为这样的数组之一。
然后,我们的函数应在一次迭代中找到并返回数列中缺少的数字。
例如 −
如果输入数组是 −
const arr = [7, 13, 19, 31, 37, 43];
则输出应为 −
const output = 25;
因为 25 存在于 19 和 31 之间
示例
示例的代码如下 −
const arr = [7, 13, 19, 31, 37, 43];
const findMissingNumber = (arr = []) => {
let {length} = arr;
let diff1 = arr[1] - arr[0];
let diff2 = arr[length - 1] - arr[length - 2];
if (diff1 !== diff2) {
if (diff1 == 2 * diff2){
return arr[0] + diff2;
}else{
return arr[length - 1] - diff1;
};
};
for (let i = 1; i < length - 2; i++){
if (arr[i + 1] - arr[i] != diff1){
return arr[i] + diff1;
};
};
return arr[0];
};
console.log(findMissingNumber(arr));输出
控制台中的输出将为 −
25
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP