152. 乘积最大子数组


思路

maxs:记录当前位置最大乘积

mins:记录当前位置最小乘积,因为当前位置的最大乘积 有可能是i-1的最小乘积*当前位置

如i-1最小乘积为-3,最大乘积为4 i当前位置值为-2 则

dp[i]最大乘积自然是-3*(-2)=6

python 复制代码
class Solution(object):
    def maxProduct(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        if len(nums)==1:
            return nums[0]
        maxs =[0]*len(nums)
        mins =[0]*len(nums)
        dp =[0]*len(nums)
        maxs[0] ,mins[0],dp[0]= nums[0],nums[0],nums[0]
        for i in range(1,len(nums)):
            maxs[i]=max(maxs[i-1]*nums[i],mins[i-1]*nums[i],nums[i])
            mins[i]=min(maxs[i-1]*nums[i],mins[i-1]*nums[i],nums[i])
            dp[i]=maxs[i]

        return max(dp)
相关推荐
2301_763472463 分钟前
使用PyQt5创建现代化的桌面应用程序
jvm·数据库·python
爱学习的阿磊4 分钟前
Web开发与API
jvm·数据库·python
qq_192779879 分钟前
Python多线程与多进程:如何选择?(GIL全局解释器锁详解)
jvm·数据库·python
naruto_lnq12 分钟前
NumPy入门:高性能科学计算的基础
jvm·数据库·python
工程师老罗23 分钟前
Pytorch中的优化器及其用法
人工智能·pytorch·python
2301_8223650331 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
luoluoal33 分钟前
基于python的人脸识别的酒店客房入侵检测系统(源码+文档)
python·mysql·django·毕业设计·源码
子午1 小时前
【2026计算机毕设~AI项目】鸟类识别系统~Python+深度学习+人工智能+图像识别+算法模型
图像处理·人工智能·python·深度学习
木井巳1 小时前
【递归算法】验证二叉搜索树
java·算法·leetcode·深度优先·剪枝
流㶡1 小时前
网络爬虫库与robots.txt规则
python·网络爬虫