643 子陣列最大平均數 I

2021-10-09 02:57:06 字數 689 閱讀 8993

題目描述:

給定 n 個整數,找出平均數最大且長度為 k 的連續子陣列,並輸出該最大平均數。

示例 1:

輸入: [1,12,-5,-6,50,3], k = 4

輸出: 12.75

解釋: 最大平均數 (12-5-6+50)/4 = 51/4 = 12.75

注意:

1 <= k <= n <= 30,000。

所給資料範圍 [-10,000,10,000]。

方法1:

主要思路:

(1)直觀的想,就是先找出前k 的元素的和作為初始值,然後逐位的更新 k 個元素的和,並保留最大值即可;

(2)最後將最大值和轉成double型別求平均即可;

class

solution

//初始值

cur_max=cur_sum;

//遍歷元素,更新k 個元素和, 保留最大k 個元素的和

for(

int i=k;isize()

;++i)

return

(double

(cur_max)

)/k;

//返回結果}}

;

LeetCode 643 子陣列最大平均數 I

給定n個整數,找出平均數最大且長度為k的連續子陣列,並輸出該最大平均數。示例 1 輸入 1,12,5,6,50,3 k 4 輸出 12.75 解釋 最大平均數 12 5 6 50 4 51 4 12.75 注意 1 k n 30,000。所給資料範圍 10,000,10,000 思路 先求前k個數的...

643 子陣列最大平均數 I(滑動視窗)

給定 n 個整數,找出平均數最大且長度為 k 的連續子陣列,並輸出該最大平均數。示例 輸入 1,12,5,6,50,3 k 4 輸出 12.75 解釋 最大平均數 12 5 6 50 4 51 4 12.75 由於是關於乙個陣列中子陣列的求和問題,所以可以利用滑動視窗方法來解。1 首先,將陣列 nu...

子陣列最大平均數

給定 n 個整數,找出平均數最大且長度為 k 的連續子陣列,並輸出該最大平均數。示例 1 輸入 1,12,5,6,50,3 k 4 輸出 12.75 簡單的滑動視窗題目 直接暴力求解會導致時間複雜度過高,大量資料輸入超出最大執行時間 使用滑動視窗優化減少迴圈巢狀 1.初始前k個數的值sum 2.從第...