首页 > 大疆笔试第一题,求最大连续两段数组和,两段不能重复
头像
聪敏的潜伏者在投简历
编辑于 2020-08-18 19:20
+ 关注

大疆笔试第一题,求最大连续两段数组和,两段不能重复

//我的思路,欢迎交流
class Solution {
public:
int maxSubArray(vector<int>& nums) {
int sum = nums[0];
int MAX = nums[0];
for (int i = 1; i < nums.size(); i++)
{
sum = max(nums[i], sum + nums[i]);
if (sum > MAX)
MAX = sum;
}
return MAX;
}
int maxDarray(vector<int>& a)
{
if (a.size() == 0)
{
return 0;
}
vector<int> left;
vector<int> right;
int max1, max2, MAX = INT_MIN;
for (int k = 1; k < a.size() - 1; k++)
{
left.assign(a.begin(), a.begin() + k);
right.assign(a.begin() + k, a.end());
max1 = maxSubArray(left);
max2 = maxSubArray(right);
MAX = max(MAX, max1 + max2);
}
return MAX;
}
};

全部评论

(0) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐