[leetcode]152. Maximum Product Subarray

原创 2016年08月28日 15:58:00
//由于负数*负数的结果可能比原值还大,所以要记录一个max还要记录一个min
class Solution {
public:
    int maxProduct(vector<int>& nums) {
        int n=nums.size();
        if(n<1)
            return 0;
        if(n==1)
            return nums[0];
            
        int minLast=nums[0];
        int maxLast=nums[0];
        int minCur;
        int maxCur;
        int product=nums[0];
        
        for(int i=1;i<n;i++)
        {
            maxCur=max(nums[i],max(maxLast*nums[i],minLast*nums[i]));
            minCur=min(nums[i],min(maxLast*nums[i],minLast*nums[i]));
            
            maxLast=maxCur;
            minLast=minCur;
            
            product=max(product,maxCur);
        }
        return product;
        
    }
};

版权声明:本文为博主原创文章,未经博主允许不得转载。

【LeetCode-面试算法经典-Java实现】【152-Maximum Product Subarray(子数组的最大乘积)】

【152-Maximum Product Subarray(子数组的最大乘积)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】代码下载【https://github.com/Wa...
  • DERRANTCM
  • DERRANTCM
  • 2015年08月24日 07:07
  • 2835

LeetCode--Maximum Subarray 最大连续子序列和 (动态规划)

动态规划-经典问题——最大连续子序列和 LeetCode--Maximum Subarray 最大连续子序列和...
  • mason_mow
  • mason_mow
  • 2014年05月25日 21:32
  • 3100

算法设计与分析的基础知识(1)

距离算法考试还有两周的时间,准备从现在开始用笔记的形式记录自己学习或复习算法课程的成果。不是有那么一句名言嘛:好记性不如烂笔头。Learn From Now! 算法是一系列解决问题的清晰指令,即对符合...
  • weixin_36870659
  • weixin_36870659
  • 2017年06月21日 22:02
  • 69

最大子数组问题 Maximum Subarray

Maximum Subarray: algorithm这个问题我们先看下问题的描述:问题描述Find the contiguous subarray within an array (containi...
  • liu2012huan
  • liu2012huan
  • 2016年05月02日 15:41
  • 10328

LeetCode | Maximum Subarray(连续最大子数组)

Find the contiguous subarray within an array (containing at least one number) which has the largest ...
  • a45872055555
  • a45872055555
  • 2014年08月18日 10:21
  • 661

Maximum Subarray 最大子数组和(连续)@LeetCode

package Level3; import java.util.Arrays; /** * * Maximum Subarray * * Find the contiguous sub...
  • hellobinfeng
  • hellobinfeng
  • 2013年11月08日 04:54
  • 6184

最大子序列和 Maximum Subarray

hackerank 算法->动态规划->The Maximum SubarrayGiven an array A={a1, a2, ..aN} of N elements, find the max...
  • u013342586
  • u013342586
  • 2016年07月27日 20:55
  • 206

最大子数组问题-GoLang实现

在一个数组A中寻找一个最大的子数组,这个问题可以用分治策略来求解。 首先需要划分问题,最大的子数组只有如下3中情况: 情况1:最大子序列出现在A[low]~A[mid] 情况2:最大子序列出现在A[m...
  • u013564276
  • u013564276
  • 2016年03月31日 16:55
  • 333

Maximum Subarray(最大子数组)

Maximum Subarray 我的思路: 1、以前是有做过hdoj上一个最长递增子序列的,想想那个比较麻烦,然后我使用和卖股票一样的算法。还把数组转换了一次,想想真是傻。 2、下面是我要...
  • DallasSeller
  • DallasSeller
  • 2014年11月26日 20:48
  • 351

Maximum Product Subarray 以及cout的输出顺序问题的讨论

Find the contiguous subarray within an array (containing at least one number) which has the largest ...
  • leo1949asd
  • leo1949asd
  • 2014年11月20日 19:28
  • 645
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[leetcode]152. Maximum Product Subarray
举报原因:
原因补充:

(最多只允许输入30个字)