为什么不能对Max Product Subarray使用“分而治之”的方法?

时间:2015-07-16 19:09:56

标签: algorithm data-structures divide-and-conquer

我们当然可以为最大数量子阵列设计分而治之,但是在为最大产品子阵列开发基于分而治之的算法时,我发现我们可能需要保持最大值和最大值。两个零件(和交叉产品)的绝对最大值,但似乎我们可以设计它。我只是好奇为什么在讨论中我没有看到任何基于分而治之的算法?

是不是因为我们保持最大和全局最大值才能进入DP?

任何想法都将受到赞赏。我只想澄清我对方法的理解。感谢。

1 个答案:

答案 0 :(得分:0)

这是因为每次递归函数调用返回的局部最大值都不能保证全局最大值。在某些情况下,您可以想象全局最大值可以是本地最大值也不是最小值的乘积。