//求最大子序列和问题,
public class MaxSubSum{
public static int maxSubSum(int[] a){
int maxSum = 0, thisSum = 0;
for(int j = 0; j < a.length; j++){
thisSum += a[j];
if(thisSum > maxSum)
maxSum = thisSum;
else if(thisSum < 0)
thisSum = 0;
}
return maxSum;
}
public static void main(String[] args){
int[] b = {-2,11,-4,13,-5,-2};
int max = maxSubSum(b);
System.out.println(max);
}
}
public class MaxSubSum{
public static int maxSubSum(int[] a){
int maxSum = 0, thisSum = 0;
for(int j = 0; j < a.length; j++){
thisSum += a[j];
if(thisSum > maxSum)
maxSum = thisSum;
else if(thisSum < 0)
thisSum = 0;
}
return maxSum;
}
public static void main(String[] args){
int[] b = {-2,11,-4,13,-5,-2};
int max = maxSubSum(b);
System.out.println(max);
}
}

本文介绍了一个用于解决最大子序列和问题的Java算法实现。该算法通过遍历整数数组并动态更新当前和最大和来寻找具有最大和的连续子序列。通过一个具体的例子展示了如何运行此算法。
572

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



