c_cpp 求数组的子数组之和的最大值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 求数组的子数组之和的最大值相关的知识,希望对你有一定的参考价值。
int MaxSum(int* arr,int n){
int start = arr[n-1];
int all = arr[n-1];
for(int i=n-2;i>=0;i--){
start = max(arr[i],start+arr[i]);
all = max(start,all);
}
return all;
}
int MaxSum(int* arr,int n){
int start = arr[n-1];
int all = arr[n-1];
for(int i=n-2;i>=0;i--){
if(start <0)
start =0;
start += arr[i];
if(start > all)
all = start;
}
return all;
}
以上是关于c_cpp 求数组的子数组之和的最大值的主要内容,如果未能解决你的问题,请参考以下文章
编程之美 2.14求数组的子数组之和的最大值
编程之美2.14 求数组的子数组之和的最大值
求数组的子数组之和的最大值及扩展问题2
求数组的子数组之和的最大值及扩展问题2
求数组最大字数组之和第一部
动态规划求最大子序列之和以及序列号