Algorithm 使用分治的最大连续和

Algorithm 使用分治的最大连续和,algorithm,Algorithm,我对“使用分而治之的方法编写一个高效的递归算法,在给定的n个实(正或负)值列表的任何连续子列表中查找最大和”感到困惑 我知道如何不用分而治之的方法来解决这个问题,但不知道用分而治之的方法 谢谢你的帮助 将列表l拆分为两个子列表l1、l2。让l1_last,l2_first分别是l1的最后一个元素l2的第一个元素(l2_first紧跟在列表l中的l1_last之后) 查找s1a l1的子列表l1a不包含的最大连续和 l1_last和s1b包含l1_last的l1的子列表l1b的最大连续和 同样地,

我对“使用分而治之的方法编写一个高效的递归算法,在给定的n个实(正或负)值列表的任何连续子列表中查找最大和”感到困惑

我知道如何不用分而治之的方法来解决这个问题,但不知道用分而治之的方法


谢谢你的帮助

将列表l拆分为两个子列表l1、l2。让l1_last,l2_first分别是l1的最后一个元素l2的第一个元素(l2_first紧跟在列表l中的l1_last之后)

查找s1a l1的子列表l1a不包含的最大连续和 l1_last和s1b包含l1_last的l1的子列表l1b的最大连续和

同样地,对l2执行同样的操作,得到s2a、l2a和s2b、l2b,其中最后一个l1_替换为首先的l2_。 l的子列表的最大连续和是 s1a、s1b、s2a、s2b、s1b+s2b以及相应的子列表
l1a,l1b,l2a,l2b c(l1b,l2b)

谢谢你的帮助!然而,我对找出S1a和S2a的原因感到困惑。因为最大的连续和可能出现在这样的子列表中,考虑L=(1,1,1,1,1,-1)在第二个“-1”:L1=(1,1,1,-1),L2=(-1,-1)。