用 JavaScript 计算滑动平均窗口
我们需要编写一个 JavaScript 函数,该函数接受数组数组整型 arr 作为第一个参数和一个数字 num(num 例如 − 如果输入数组和数字为 − 那么输出应该是 − 因为大小为 2 的可能的连续窗口为 (1, 2)、(2, 3)、(3, 4) 和 (4, 5) 代码如下 − 控制台中的输出将如下 −const arr = [1, 2, 3, 4, 5];
const num = 2;
const output = [1.5, 2.5, 3.5, 4.5];
示例
const arr = [1, 2, 3, 4, 5];
const num = 2;
const findContiniousAverage = (arr = [], num = 1) => {
if(num > arr.length){
return [];
};
const res = [];
let sum = 0;
let left = 0, right = 0;
for(; right < num; right++){
sum += arr[right];
};
res.push(sum / num);
for(; right < arr.length; right++, left++){
sum -= arr[left];
sum += arr[right];
res.push(sum / num);
};
return res;
};
console.log(findContiniousAverage(arr, num));
console.log(findContiniousAverage(arr));输出
[ 1.5, 2.5, 3.5, 4.5 ]
[ 1, 2, 3, 4, 5 ]
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP