从数组JavaScript中查找第n个丢失的数字
假设我们有一个严格增加的数字序列(以一个单位递增),其中缺少某些元素,例如:
const arr = [2,3,4,7,11];
我们需要编写一个JavaScript函数,该函数将一个数组作为第一个参数,并将一个数字(例如n)作为第二个参数。
该函数应找到数组中缺少的第n个元素。
例如-
如果对于上述数组,则n=4;
那么输出应该是8,因为
缺少的元素是-
1, 5, 6, 8
示例
const arr = [2, 3, 4, 7, 11];
const findMissing = (arr = [], n) => {
let el = 0;
let diff = 0;
for(let i=0; i<arr.length; ++i) {
const difference = arr[i] - el - 1;
const sum = diff + difference;
if(sum>=n) {
break;
};
diff = sum;
el = arr[i];
}
return el + n - diff;
};
console.log(findMissing(arr, 4));输出结果
这将产生以下输出-
8
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短