用 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