Search⌘ K
AI Features

Solution: Moving Average from Data Stream

Explore how to implement a MovingAverage class in C++ that calculates the moving average of integers from a stream within a sliding window. Understand using a queue for recent values and maintaining a running sum to achieve constant time complexity for updates and retrievals.

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 100\leq 100

  • 103-10^3 \leq ...