题意理解:
求解数列中的子数列,要求子数列的和最大;
题目分析:
1. DP(如解题代码所示);
2. 分治(参考http://www.2cto.com/kf/201403/289418.html)
解题代码:
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int size=nums.size();
int sum=0;
int max=INT_MIN;
for(int i=0; i<size; i++){
sum+=nums[i];
if(sum>max){
max=sum;
}
if(sum<0){
sum=0;
}
}
return max;
}
};
本文介绍了解决子数列和最大值问题的一种高效算法。通过动态规划的方法,我们可以在O(n)的时间复杂度内找到使子数列和最大的方案。文章提供了详细的算法思路解析及C++实现代码。
1857

被折叠的 条评论
为什么被折叠?



