python 最大连续乘积子数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 最大连续乘积子数组相关的知识,希望对你有一定的参考价值。
"""
input: [-2.5, 4, 0, 3, 0.5, 8, -1]
output: 3 * 0.5 * 8
solution: dynamic
"""
def MaxProductSubArray(A):
Min, Max = A[0], A[0]
maxResult = A[0]
for a in A[1:]:
end1, end2 = Min * a, Max * a
Max = max(max(end1, end2), a)
Min = min(min(end1, end2), a)
maxResult = max(maxResult, Max)
return maxResult
def main():
A = [-2.5, 4, 0, 3, 0.5, 8, -1]
print(MaxProductSubArray(A))
if __name__ == "__main__":
main()
以上是关于python 最大连续乘积子数组的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode第152题—乘积最大子数组—Python实现
LeetCode第152题—乘积最大子数组—Python实现
LeetCode--152--乘积最大子序列(python)
2021-10-18:乘积最大子数组。给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。力扣152。
经典算法——连续子数组的最大乘积
找出数组中的连续最大乘积