最大子序和(动态规划)
题目描述:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。
public class MaxSubArray {
public static void main(String[] args) {
int[] nums={-2,1,2,3,-4};
System.out.println(maxSubArray(nums));
}
public static int maxSubArray(int[] nums){
int ans=nums[0];
int sum=0;
for(int x:nums){
if(sum>0){
sum=sum+x;
}else{
sum=x;
}
ans=Math.max(ans,sum);
}
return ans;
}
}