js如何在1到100的整数数组上找到缺失的数字
tag:
Js
1 数组内数字不重复,且缺失一个数字
思路:
1) 先使用等差数列公式求和:n*(n+1)/2
2) 再对当前数组求和,可参考比较几种js数组求和的方法,数组较大建议使用reduce
3) 对两个和求差
function getMissingNum(arr) {
var n = arr.length + 1; // N + 1, 最大项
var expectedSum = n * (n + 1) / 2; // Sum1
var sum = 0; // Sum2
arr.map(item => sum += item);
return expectedSum - sum;
}
console.log(getMissingNum([1, 2, 4, 5])) // 3