返回一个整数数组中最大子数组的和

设计思想:1.定义一个一定长度的整数数组。2.求连续的子数组和(嵌套循环,1,12,123....2 ,23 ,234...3, 34.,345...)

出现的问题:每个和全部求出并输出,开始想用一个数组存这些和,但是在这个嵌套循环里面我感觉一维数组不能实现,二维数组也许可以。但是请教了一下同学,可以用

List集合 List<Integer> all=new ArrayList<Integer>();  (这个集合中存放的是integer类型数据)

List<Integer> all=new ArrayList<Integer>();
        for(int j=-1;j<=8;j++)
        {
            int sum=0;
            for(int i=j+1;i<=9;i++)
            {
                sum=sum+a[i];
                //System.out.println(sum);
                all.add(sum);
            }
        }

调用list集合的add()方法将子数组和存入集合all

再用Collections中的sort()方法将集合all排序(从小到大,所以集合中最后一个元素就是最大的子数组的和)

再用list中get()方法获取all集合中的指定元素。

运行结果:

原文地址:https://www.cnblogs.com/janeszj/p/10500457.html