LEETCODE | PYTHON | 643 | 子数组最大平均数Ⅰ

LEETCODE | PYTHON | 643 | 子数组最大平均数Ⅰ

1. 题目

给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。

请你找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数。

任何误差小于 10-5 的答案都将被视为正确答案。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/maximum-average-subarray-i
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 代码

class Solution:
    def findMaxAverage(self, nums: List[int], k: int) -> float:

        #初始化
        l = len(nums)
        summ = sum(nums[0:k])
        Sum = summ

        #设定双指针
        index1 = 0
        index2 = k


        #循环判断
        while index2<l:
            #增加下一个数,减去上一个数,保证窗口内始终为4个数
            summ = summ + nums[index2] - nums[index1]
            Sum = max(Sum,summ)
            index1 = index1 + 1
            index2 = index2 + 1 
        
        return Sum/k

版权声明:本文为Angelawlc原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。