分治策略之最大子数组问题
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]的最大子数组,然后还一个是跨越中点的子数组。
下面是一个示意图
以上是关于分治策略之最大子数组问题的主要内容,如果未能解决你的问题,请参考以下文章