分治策略之最大子数组问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分治策略之最大子数组问题相关的知识,希望对你有一定的参考价值。

从股票买卖问题转换成为一个求最大子数组问题

 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
价格 100 113 110 85 105 102 86 63 81 101 94 106 101 79 94 90 97
变化 13 -3 -25 20 -3 -16 -23 18 20 -7 12 -5 -22 15 -4 7
 
 
暴力求解所花费的时间是O(n^2)
采用分治技术来求解最大子数组问题,假定要求的数组为A[low..high]的最大子数组。
将子数组划分为两个规模尽可能相等的子数组,也就是说找到子数组的中央位置,比如mid,然后考虑求解两个子数组:
A[low..mid]A[mid..high]的最大子数组,然后还一个是跨越中点的子数组。
下面是一个示意图
 
 
技术分享

以上是关于分治策略之最大子数组问题的主要内容,如果未能解决你的问题,请参考以下文章

最大子数组问题的几种解法

分治策略   最大子数组问题

分治法解决最大子数组问题

分治算法 ------最大子段和

算法导论最大子数组

算法题|-分治法解决最大子数组问题