一、题目
二、思路
算法:动态规划
当dp[i-1]<=0时,dp[i]=array[i];
否则,dp[i]=dp[i-1]+array[i];
然后result实时比较大小
三、代码
class Solution {
public:
int FindGreatestSumOfSubArray(vector<int> array) {
int dp[array.size()];
dp[0]=array[0];
int result=dp[0];
for(int i=1;i<array.size();++i)
{
if(dp[i-1]<=0)
{
dp[i]=array[i];
}
else
{
dp[i]=dp[i-1]+array[i];
}
result=result>dp[i]?result:dp[i];
}
return result;
}
};