描述
输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。
题解:利用动态规划的思想,将累加和与下一个数值进行比较,取较大值,每次都保存最大和值。
public class Solution {
public int FindGreatestSumOfSubArray(int[] array) {
int ans=0;
int max=array[0];
for(int i=0;i<array.length;i++)
{
ans=Math.max(ans+array[i],array[i]);
max=Math.max(max,ans);
}
return max;
}
}