做方案的网站,月夜影视在线观看免费完整版,东莞网站建设推广平台,宣传页模板图给你一个整数数组 nums #xff0c;请你找出一个具有最大和的连续子数组#xff08;子数组最少包含一个元素#xff09;#xff0c;返回其最大和。 子数组
是数组中的一个连续部分。 示例 1#xff1a;
输入#xff1a;nums [-2,1,-3,4,-1,2,1,-5,4]
输出#xff1a;…给你一个整数数组 nums 请你找出一个具有最大和的连续子数组子数组最少包含一个元素返回其最大和。 子数组
是数组中的一个连续部分。 示例 1
输入nums [-2,1,-3,4,-1,2,1,-5,4]
输出6
解释连续子数组 [4,-1,2,1] 的和最大为 6 。示例 2
输入nums [1]
输出1示例 3
输入nums [5,4,-1,7,8]
输出23
这道题是一道动态规划我们通过比较nums【i】与dp【i-1】 nums【i】来判断这个位置的最大值代码如下
class Solution {
public:int maxSubArray(vectorint nums) {int n nums.size(),ans -10005;if(n 1) return nums[0];vectorint dp(n,0);dp[0] nums[0];for(int i1;in;i){dp[i] max(nums[i],dp[i-1]nums[i]);}for(int i0;in;i){ans max(dp[i],ans);}return ans;}
};
加油