We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 190f8a9 commit 513c17eCopy full SHA for 513c17e
maximum_product_subarray.py
@@ -0,0 +1,19 @@
1
+# -*- coding: utf-8 -*-
2
+
3
+class Solution:
4
+ # @param nums: an integer[]
5
+ # @return: an integer
6
+ def maxProduct(self, nums):
7
+ # write your code here
8
+ # 用两个数组保存到当前的最大最小值,方便负数处理。
9
+ ret = nums[0]
10
+ max_products, min_products = [0] * len(nums), [0] * len(nums)
11
+ max_products[0], min_products[0] = nums[0], nums[0]
12
+ for i in xrange(1, len(nums)):
13
+ max_products[i] = max(max_products[i - 1] * nums[i], \
14
+ min_products[i - 1] * nums[i], nums[i])
15
+ min_products[i] = min(max_products[i - 1] * nums[i], \
16
17
+ if max_products[i] > ret:
18
+ ret = max_products[i]
19
+ return ret
0 commit comments