AlgoMaster Logo

Maximum Average Subarray I

nums=[1, 12, -5, -6, 50, 3],k=4
1public double findMaxAverage(int[] nums, int k) {
2    // Calculate initial sum
3    int currentSum = 0;
4    for (int i = 0; i < k; i++) {
5        currentSum += nums[i];
6    }
7    int maxSum = currentSum;
8
9    // Slide window
10    for (int i = k; i < nums.length; i++) {
11        currentSum = currentSum - nums[i - k] + nums[i];
12        maxSum = Math.max(maxSum, currentSum);
13    }
14
15    return (double) maxSum / k;
16}
0 / 11
112-5-6503currentSum = 0maxAvg = 0.00