Maximum Product Subarray
来源:互联网 发布:听国学的软件 编辑:程序博客网 时间:2024/06/05 12:07
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
.
寻找数组中乘积最大的连续字数组 求最大乘积
需要构建局部最大连乘值 和 局部最小连乘值 最大最小连乘值重新计数的位置就是数组中有0元素出现的位置
public class Solution { public int maxProduct(int[] A) { int Max = Integer.MIN_VALUE; if(A.length == 0) return Max; if(A.length == 1) {Max = A[0]; return Max;} int Maxproduct = 0;//局部最大值 int Minproduct = 0;//局部最小值 for(int i = 0;i<A.length;i++){ if((i>0)&&(A[i-1] == 0)||(A[i] == 0)||(i==0)){ Maxproduct = A[i]; Minproduct = A[i]; Max = Maxproduct > Max ? Maxproduct:Max; continue; } //局部的最大值和最小值的实现 需要和当前值A[i] 最大值和最小值乘以A[i] 为什么需要当前值的比较 因为当前值左右局部最大最小值 int k = Maxproduct; Maxproduct = Math.max(Math.max(k*A[i],A[i]),Minproduct*A[i]); Minproduct = Math.min(Math.min(Minproduct*A[i],A[i]),k*A[i]); Max = Maxproduct > Max ? Maxproduct:Max; } return Max; }}
0 0
- LeetCode_Maximum Subarray | Maximum Product Subarray
- Maximum Product Subarray
- Maximum Product Subarray
- Maximum Product Subarray 【LeetCode】
- [LeetCode] Maximum Product Subarray
- leetcode-Maximum Product Subarray
- Maximum Product Subarray -- LeetCode
- LeetCode-Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- 【LeetCode】Maximum Product Subarray
- leetcode:Maximum Product Subarray
- leetcode: Maximum Product Subarray
- Leetcode: Maximum Product Subarray
- Maximum Product Subarray
- Maximum Product Subarray
- [LeetCode]Maximum Product Subarray
- Leetcode Maximum Product Subarray
- Cocoa初识
- 屌丝变土豪 河北航官网购票可抽iphone6大奖
- android 广播与 接收器
- 设计模式之六原则
- 2014年末小结
- Maximum Product Subarray
- 3、mysql数据库双机同步开源软件otter的配置
- 欧盟玩具EN71
- TF-IDF算法及应用实例
- tomcat启动Java.Lang.NoClassDefFoundError: Org/Apache/Commons/Logging/LogFactory异常
- C# RSA和Java RSA互通
- 【PyQt4 实例29】利用QDataStream对文件进行存取
- WPF Silverlight 附加属性(AttachedProperty)
- Android中的Shape使用总结—圆角的按钮