二维数组最大子数组
早上突然就醒了。
一维的就让我感到困难了,二维的简直是要我的命,感觉是自己的设计思路和思想有问题且不够灵活熟练,就是想不出来,问了同学好几次都不好意思了,只能自己慢慢琢磨代码了,偷了份代码过来看。
import java.util.Scanner; public class erweishuzu { 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); } }
截图:
我想当好一名程序员,但我开始迷茫了。