Search⌘ K
AI Features

Solution: Moving Average from Data Stream

Understand how to implement a MovingAverage class that calculates the moving average of a stream of integers within a fixed window size. Learn to use a queue and running sum to achieve constant time updates when adding new values and removing old ones, optimizing both time and space complexity.

Statement

Given a stream of integers and a window size, calculate the moving average of all integers in the sliding window. Implement a class called MovingAverage that has the following methods:

  • Constructor (int size): This constructor initializes the object with the specified window size.

  • double next (int val): This method takes an integer value as input and returns the moving average of the last size values from the stream.

Constraints:

  • 11 \leq size ...