152. 乘积最大子数组 - 力扣(LeetCode)

大佬图示:

代码

python 复制代码
# encoding = utf-8
# 开发者:Alen
# 开发时间: 21:37 
# "Stay hungry,stay foolish."

class Solution(object):
    def maxProduct(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        res = max(nums)
        curMin, curMax = 1, 1

        for n in nums:
            if n == 0:
                curMin, curMax = 1, 1
                continue
            temp = n * curMax # 防止提前修改的curMax污染curMin
            curMax = max(n * curMax, n * curMin, n)
            curMin = min(temp, n * curMin, n)
            res = max(res, curMax)
        return res
num = Solution().maxProduct([-4,-3,-2])
print(num)

结果

解题步骤:

相关推荐
倚楼听风语2 分钟前
Kotlin 协程与 suspend 原理详解
java·算法·kotlin
Xin7702 分钟前
LeetCode 200. 岛屿数量(DFS 深度优先遍历法)
leetcode
程序员清风4 分钟前
双指针与滑动窗口:高效处理连续区间
开发语言·算法
代钦塔拉9 分钟前
【C++/Qt 进阶】设计模式系列(2):工厂模式——从游戏角色到披萨店
c++·算法·设计模式
思茂信息14 分钟前
电磁仿真学涉及哪些算法?
人工智能·算法·数学建模·matlab·emc·电磁仿真·仿真辐射
糖果豆豆36 分钟前
让 AI 自查三遍,它只会把错的说得更像对的——检查的人和被检查的,是同一个
算法·架构
总裁余(余登武)2 小时前
K-means算法改进(Python版)
python·算法·kmeans
灯澜忆梦2 小时前
【面向对象编程c++】| 指针与自定义数据类型
开发语言·c++·算法
xxwl5852 小时前
区域赛算法模版第八章---贪心(Greedy)
c++·笔记·学习·算法
CCblandy3 小时前
向量检索 ANN 参数实测:换一种数据分布,recall 掉了 51 个百分点
人工智能·python·算法·自然语言处理·性能优化