class Solution {
/**
动态规划
拆解成子问题,dp[i]表示当前nums数组以i下标结尾的最大连续数组之和
*/
public int maxSubArray(int[] nums) {
int max = nums[0];
for(int i=1;i<nums.length;i++){
//用来判定,如果之前最大和为负数,那等于给新加进来的成员起了副作用,那还不如取自己本身
nums[i] += Math.max(0,nums[i-1]);
max = Math.max(max,nums[i]);
}
return max;
}
}
动态规划_连续子数组的最大和
最新推荐文章于 2024-07-07 13:11:15 发布