1 public class Maxsum {
2 public int maxsum(int[] array) {
3 if (array == null || array.length == 0) {
4 throw new IllegalArgumentException("array is null or empty.");
5 }
6
7
8 int result = array[0], mark = 0;
9
10 for (int i = 0; i < array.length; i++) {
11 int element = array[i];
12
13 if (mark >= 0) {
14 mark += element;
15 } else {
16 mark = element;
17 }
18
19 if (mark > result) {
20 result = mark;
21 }
22 }
23 return result;
24 }
25
26 public static void main(String[] args) {
27 Maxsum maxsum = new Maxsum();
28 int maxSum = maxsum.maxsum(new int[]{-2,2,-5,3,-4});
29 System.out.println(maxSum);
30 }