Leetcode 152 Maximum Product Subarray
2017-06-09 18:07
381 查看
Find the contiguous subarray within an array (containing at least one number) which has the largest product.
For example, given the array
the contiguous subarray
同样使dp的问题,但是值得注意的是,负数和负数相乘有可能是是个大的结果
于是min和max都要存下来
public class Solution {
public int maxProduct(int[] nums) {
if(nums == null){
return 0;
}
int result = nums[0];
int min = nums[0];
int max = nums[0];
for(int i = 1; i < nums.length; i++){
int temp = min;
min = Math.min(nums[i], Math.min(nums[i] * min, nums[i]*max));
max = Math.max(nums[i], Math.max(nums[i] * temp, nums[i]*max));
result = result > max ? result : max;
}
return result;
}
}
For example, given the array
[2,3,-2,4],
the contiguous subarray
[2,3]has the largest product =
6.
同样使dp的问题,但是值得注意的是,负数和负数相乘有可能是是个大的结果
于是min和max都要存下来
public class Solution {
public int maxProduct(int[] nums) {
if(nums == null){
return 0;
}
int result = nums[0];
int min = nums[0];
int max = nums[0];
for(int i = 1; i < nums.length; i++){
int temp = min;
min = Math.min(nums[i], Math.min(nums[i] * min, nums[i]*max));
max = Math.max(nums[i], Math.max(nums[i] * temp, nums[i]*max));
result = result > max ? result : max;
}
return result;
}
}
相关文章推荐
- LeetCode:152_Maximum Product Subarray | 最大乘积连续子数组 | Medium
- leetcode-152 Maximum Product Subarray
- leetcode(152). Maximum Product Subarray
- LeetCode 53/152 Maximum Subarray/Maximum Product Subarray---DP **
- leetcode解题方案--152--Maximum Product Subarray
- 【leetcode】Array—— Maximum Product Subarray(152)
- leetcode 152 Maximum Product Subarray
- leetcode 152: Maximum Product Subarray
- Leetcode 152 Maximum Product Subarray
- Leetcode 152 Maximum Product Subarray 子数组最大乘积
- Java for LeetCode 152 Maximum Product Subarray
- LeetCode(152) Maximum Product Subarray
- leetcode 152: Maximum Product Subarray
- [LeetCode152]Maximum Product Subarray
- [LeetCode]题解(python):152-Maximum Product Subarray
- leetcode152-Maximum Product Subarray(乘积最大子数组)
- LeetCode(152) Maximum Product Subarray
- [LeetCode]152 Maximum Product Subarray
- LeetCode - 152 - Maximum Product Subarray
- [Leetcode] #152 Maximum Product Subarray