连续子树的最大和
class Solution {
public:
int FindGreatestSumOfSubArray(vector<int> array) {
vector<int> value;
int len=array.size();
int max=0;
if(len==1)//还没考虑len=0返回什么
return array[0];
value.push_back(array[0]);
for(int i=0;i<len-1;i++)
{
if(value[i]<0)
value.push_back(array[i+1]);
else
value.push_back(value[i]+array[i+1]);
}
max=value[0];
for(int i=1;i<len;i++)
{
if(value[i]>max)
max=value[i];
}
return max;
}
};改进措施,参考大神写法:
可以把比较大小的写法写在同一个循环里面,我这个是2n同一个循环是n,实际都是n,但写一起的话,代码量看起来会少很多