剑指 Offer II 041. 滑动窗口的平均值

206 阅读1分钟

剑指 Offer II 041. 滑动窗口的平均值

每次取值时候,都要去判断this.nums.length > this.capacity,如果超标了,则应该删除最前面的那个值

var MovingAverage = function (size) {
  this.nums = [];
  this.capacity = size;
  this.sum = 0;
};
MovingAverage.prototype.next = function (val) {
  this.nums.push(val);
  this.sum += val;
  if (this.nums.length > this.capacity) {
    this.sum -= this.nums.shift();
  }
  return this.sum / this.nums.length;
};