二维数组最大子数组和

 

网上看了很多可以解决这个问题的代码,有枚举什么的看不太懂,只有这个代码理解了。加上一点我之前自己写的一部份,终于啊

public class test{

    public static void main(String[] args) {
        int a[][];
        int i,j,l,h,n,k,sum,max;
        //随机产生一个数组
        Scanner scanner = new Scanner(System.in);
        System.out.print("输出随机产生的数组的长度:");
        h=scanner.nextInt();
        System.out.print("输出随机产生的数组的高度:");
        l=scanner.nextInt();
        scanner.close();
        a=new int[l][h];
        for(i=0;i<l;i++)
        {
            for(j=0;j<h;j++)
            {
                Random random = new Random();
                a[i][j]=random.nextInt(11);
                a[i][j]=a[i][j]-1;
                System.out.print(a[i][j]);
                System.out.print(" ");
            }
            System.out.println("");
        }
        max=0;
        for(n=0;n<l;n++)
        {
            sum=0;
            for(i=0;i<l-n;i++)
            {
                sum=0;
                for(j=0;j<h;j++)
                {
                    for(k=i;k<=i+n;k++)
                    {
                        sum=sum+a[k][j];
                    }
                    System.out.print(sum);
                    System.out.print(" ");
                    if(sum<0)
                    {
                        sum=0;
                    }
                    if(max<sum)
                    {
                        max=sum;
                    }
                }
            }
        }
        System.out.print(max);
        System.out.println("");            
    }
}

 

 

是多疑还是去相信 谎言背后的忠心 或许是自己太执迷 命题游戏 沿着他的脚步 呼吸开始变得急促 就算看清了面目 设下埋伏 真相却居无定处 I swear I'll never be with the devil 用尽一生孤独 没有退路的路 你看不到我 眉眼焦灼却不明下落 命运的轮轴 伺机而动 来不及闪躲 沿着他的脚步 呼吸开始变得急促 就算看清了面目 设下埋伏 真相却居无定处 I swear I'll never be with the devil 用尽一生孤独 没有退路的路 你看不到我 眉眼焦灼却不明下落 命运的轮轴 伺机而动 来不及闪躲 你看不到我 眉眼焦灼却不明下落 命运的轮轴 伺机而动 来不及闪躲 黑夜和白昼 你争我夺 真相被蛊惑 心从不退缩 这天堂荒漠 留给孤独的猎手
原文地址:https://www.cnblogs.com/muailiulan/p/11071539.html