题目描述:
给定一个整数数组,要求返回该数组最大子数组的数值。
输入用例:
-4 5 9 8 -7 3 1
输出用例:
22
输入用例:
-5 9 8 3 -7 4 0 1 -7 2 3
输出用例:
20
代码部分
import java.util.Scanner;
public class Newexc1 {
public static void main(String[] args) {
//接收不定长度的数组
Scanner sc = new Scanner(System.in);
String[] s =null;
s = sc.nextLine().split(" ");
int[] c =new int[s.length];
for(int i=0;i<c.length;i++) {
c[i] = Integer.valueOf(s[i]);
}
//找出最大子数组
int sum,save,big=0;
for(int i=0;i<c.length-1;i++) {
sum = save = c[i];
for(int j=i+1;j<c.length;j++) {
save += c[j];
if(save>sum) {
sum=save;
}
}
if(i==0) {
big = sum;
}else {
if(big<sum) {
big = sum;
}
}
}
//输出最大子数组的值
System.out.println(big);
sc.close();
}
}