<P> The running time of this algorithm is O (n). </P> <P> Divide and Conquer is a technique that uses recursion to break a problem into sub-problems until they can be solved directly . The solutions are then put together to solve the original problem . </P> <P> This algorithm can be used to solve MSP by dividing the initial array in halves until there is one element left, then comparing the maximum sums of each subsequence until there is only one maximum sum . </P> <P> A bit of a background: Kadane's algorithm is based on splitting up the set of possible solutions into mutually exclusive (disjoint) sets . We exploit the fact that any solution (i.e., any member of the set of solutions) will always have a last element i (\ displaystyle i) (this is what is meant by "sum ending at position i (\ displaystyle i) "). Thus, we simply have to examine, one by one, the set of solutions whose last element's index is 1 (\ displaystyle 1), the set of solutions whose last element's index is 2 (\ displaystyle 2), then 3 (\ displaystyle 3), and so forth to n (\ displaystyle n). It turns out that this process can be carried out in linear time . </P>

Find the maximum sum of a subsequence in the array