求最大整数组

import java.util.Scanner;

public class Ceshi {
    public static void main(String args[]){
        Scanner sc=new Scanner(System.in);
        int L;
        System.out.println("请输入数组长度");
        L=sc.nextInt();
        int a[]=new int[L];
        int c[]=new int[L];
        int sum1[]=new int[L];
        int d=sum1[0];
        System.out.println("请输入要进行处理的数(L个):");
        for(int i=0;i<L;i++)
        {
            c[i]=sc.nextInt();
        }
        for(int j=0;j<L;j++){
            for(int k=0;k<L;k++){
                a[k]=c[(j+k)%L];
            }
            int sum=a[0];
            int b=0;
            for(int i=0;i<L;i++){
                if(b<0)
                {
                    b=a[i];
                }
                else{
                    b+=a[i];
                }
                if(sum<b){
                    sum=b;
                }
                sum1[j]=sum;
            }
            if(d<sum1[j]){
                d=sum1[j];
            }
        }
        System.out.print("最大子数组和为:"+d);
    }

}

设计思路: 我们坐了数组中求最大和 还要在循环数组中求取,按照下标一个一个的找,大于零的加起来

 

posted @ 2017-03-31 21:46  20153143  阅读(106)  评论(0编辑  收藏  举报