zoukankan      html  css  js  c++  java
  • 二维数组

    这是最笨的方法,求二维数组的子数组和的最大值的和我之前算一维数组的子数组和的最大值想法相类似,主要是在循环那里,将算子数组和的宽高的取值范围改成一致的,其他与一维数组差不多,需要判断最大值

    package test;
    
    import java.util.Scanner;
    
    public class test {
    
        public static void main(String[] args) {
            int a[][];
            int i,j,l,h,n,k,sum,max;
         
            Scanner sc = new Scanner(System.in);
            System.out.print("输出数组的长度:");
            h=sc.nextInt();
            System.out.print("输出数组的高度:");
            l=sc.nextInt();
            
            a=new int[l][h];
            System.out.println("输入数组的元素");
            for(i=0;i<l;i++)
            {
                for(j=0;j<h;j++)
                {
                  a[i][j]=sc.nextInt();
                    
                    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];
                        }
                     
                        if(max<sum)
                        {
                            max=sum;
                        }
                    }
                }
            }
            System.out.print(max);
            System.out.println("");            
        }
    }
    

      

  • 相关阅读:
    稀疏自编码器和矢量化编程
    使用支持向量机训练mnist数据
    采用libsvm进行mnist训练
    支持向量机
    月下“毛景树”
    最小费用最大流模板
    最大流模板
    选学霸
    线段树 2
    线段树 1
  • 原文地址:https://www.cnblogs.com/zlj843767688/p/10590892.html
Copyright © 2011-2022 走看看