Leetcode Maximum Product Subarray
2015-10-21 02:10
465 查看
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
When iterating the array, each element has two possibilities: positive number or negative number. We need to track a minimum value, so that when a negative number is given, it can also find the maximum value. We define two local variables, one tracks the maximum and the other tracks the minimum.
Java code:
Reference:
1. http://www.programcreek.com/2014/03/leetcode-maximum-product-subarray-java/
For example, given the array
[2,3,-2,4],
the contiguous subarray
[2,3]has the largest product =
6.
解题思路:
This is similar to maximum subarray. Instead of sum, the sign of number affect the product value.When iterating the array, each element has two possibilities: positive number or negative number. We need to track a minimum value, so that when a negative number is given, it can also find the maximum value. We define two local variables, one tracks the maximum and the other tracks the minimum.
Java code:
public class Solution { public int maxProduct(int[] nums) { int result = nums[0]; int max = nums[0]; int min = nums[0]; for(int i = 1; i< nums.length; i++) { int temp = max; max = Math.max(Math.max(nums[i], nums[i] * temp), nums[i] * min); min = Math.min(Math.min(nums[i], nums[i] * temp), nums[i] * min); result = Math.max(max, result); } return result; } }
Reference:
1. http://www.programcreek.com/2014/03/leetcode-maximum-product-subarray-java/
相关文章推荐
- win32的ANSI、UNICODE、UTF8互转
- Ember.js 入门指南——新建、更新、删除记录
- Cocos2d-x 2.x android 集成admob广告(三)banner+interstitial
- (1)python基本使用
- -Dmaven.multiModuleProjectDirectory system propery is not set.
- 这就是汪峰刚刚发布的耳机,它够格上科技头条吗?
- NFS服务配置
- poj 3693(后缀数组)
- 【Alpha】Task分配与计划发布
- 罗永浩押注“文艺”:在千元机市场打起了“色彩大战”
- 我所经历的编程语言
- 资本寒冬将至?百度暂停大规模社会招聘
- 连续下滑即使是华润雪花等
- aoj2450 Do use segment tree 树链剖分
- css----零散知识点
- 代理delegate、NSNotification、KVO在开发中的抉择
- Leetcode Maximum Subarray
- 硬盘安装Ubuntu
- 对于给定的一组数据,用weka怎么进行预测?
- 云服务器挂载不了数据盘(急用,求大神解答)好人一生平安