浏览 1592 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-29
public class Test { public static int max(int[] src) { int sum = src[0]; int minsum = src[0]; int maxsum = src[0]; int sum1 = src[0]; int sum2 = src[0]; int max = src[0]; for (int i = 1; i < src.length; i++) { sum += src[i]; if (sum1 > 0) { sum1 += src[i]; } else { sum1 = src[i]; } if (sum2 < 0) { sum2 += src[i]; } else { sum2 = src[i]; } if (sum1 > maxsum) { maxsum = sum1; } if (sum2 < minsum) { minsum = sum2; } } max = maxsum > sum - minsum ? maxsum : sum - minsum; if(minsum == sum) { max = maxsum; } return max; } public static void main(String[] args) { int src[] = { 8,11, 2, 3,-6, 6, 7, 8 }; System.out.println(Test.max(src)); } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |