Example: Moving Average of size values - rFronteddu/general_wiki GitHub Wiki

public class MovingAverage {
    int size;
    double sum;
    Queue<Integer> window;

    MovingAverage(int size) {
        this.size = size;
        sum = 0;
        window = new LinkedList<>();
    }

    double next (int val) {
        if (window.size() == size) {
            sum -= window.poll();
        }
        sum += val;
        window.add(val);
        return sum / window.size();
    }
}
⚠️ **GitHub.com Fallback** ⚠️