当前位置:网站首页>LeetCode - 152 乘积最大子数组

LeetCode - 152 乘积最大子数组

2022-07-06 06:28:00 三岁就很萌@D

在这里插入图片描述

动态规划

在这里插入图片描述

class Solution {
    
    public int maxProduct(int[] nums) {
    
       int n = nums.length;
       int maxv = 1;
       int minv = 1;
       int ans = Integer.MIN_VALUE;
       for(int i = 0;i < n;i++){
    
           int premax = maxv;
           int premin = minv;
           if(nums[i] < 0){
    
              maxv = Math.max(premin*nums[i],nums[i]);
              minv = Math.min(premax*nums[i],nums[i]);
           }
           else{
    
                maxv = Math.max(premax*nums[i],nums[i]);
                minv = Math.min(premin*nums[i],nums[i]);
           }
           ans = Math.max(maxv,ans);
       }
       return ans;
    }
}
原网站

版权声明
本文为[三岁就很萌@D]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_44822951/article/details/125591504