摘要: 一.问题描述 给定长度为n的整数序列,a[1...n], 求[1,n]某个子区间[i , j]使得a[i]+…+a[j]和最大.或者求出最大的这个和. 例如(-2,11,-4,13,-5,2)的最大子段和为20,所求子区间为[2,4]. 如果该序列的所有元素都是负整数时定义其最大子段和为0。二. 问题分析 1、最大子段和问题的简单算法: 2、最大子段和问题的分治法: 求子区间及最大和,从结构上是非常适合分治法的,因为所有子区间[start, end]只可能有以下三种可能性: 在[1, n/2]这个区域内 在[n/2+1, n]这个区域内 起点位于[1,n/2... 阅读全文
posted @ 2013-12-08 20:04 kira2will 阅读(316) 评论(0) 推荐(0) 编辑