zoukankan      html  css  js  c++  java
  • LeetCode Maximum Product Subarray

    Find the contiguous subarray within an array (containing at least one number) which has the largest product.

    For example, given the array [2,3,-2,4],
    the contiguous subarray [2,3] has the largest product = 6.

    minLast[i] 表示以A[i]结尾的最小值,maxLast[i]表示以A[i]结尾的最大值。

    minLast[i] = Math.min(A[i], Math.min(minLast[i - 1]*A[i], maxLast[i - 1]*A[i]));
    maxLast[i] = Math.max(A[i], Math.max(maxLast[i - 1]*A[i], minLast[i - 1]*A[i]));

     1 public class Solution {
     2     public int maxProduct(int[] A) {
     3         int length = A.length;
     4         if (length == 0) {
     5             return 0;
     6         }
     7         int[] minLast = new int[length];
     8         int[] maxLast = new int[length];
     9         minLast[0] = A[0];
    10         maxLast[0] = A[0];
    11         int res = Integer.MIN_VALUE;
    12         for (int i = 1; i <length ; i++) {
    13             minLast[i] = Math.min(A[i], Math.min(minLast[i - 1]*A[i], maxLast[i - 1]*A[i]));
    14             maxLast[i] = Math.max(A[i], Math.max(maxLast[i - 1]*A[i], minLast[i - 1]*A[i]));
    15         }
    16         for (int i : maxLast) {
    17             if (i>res) res = i;
    18         }
    19         return res;
    20     }
    21 }
  • 相关阅读:
    shell 脚本3 (输出与流程控制)
    centos 添加sudo 权限
    rz安装
    centos 安装mysql
    linux删除文件未释放
    关于字符串String的编程。
    spring mvc 学习指南二
    spring mvc 学习指南一
    《 spring mvc 》学习计划
    关于jsp的总结
  • 原文地址:https://www.cnblogs.com/birdhack/p/4131675.html
Copyright © 2011-2022 走看看