Java如何返回一个返回2d数组直角模式的函数

时间:2016-04-06 22:25:00

标签: java arrays multidimensional-array

考虑一组数字网格,如:

1      1  2      1  2  3
       2  2      2  2  3
                 3  3  3

换句话说,一个正方形网格,其中每个位置的数字遵循直角图案。如何编写创建,填充和返回这样的二维数组的函数?

(另外,我想知道Math.max(a,b)是否对填充网格很有用。我想知道它是否可以返回两个输入a和b之间哪个值更大。)

我已经设置了一个功能,但我不知道从哪里开始:

int[][] cornerPattern(int squareSize) {

}

提示没问题

1 个答案:

答案 0 :(得分:1)

大多数java程序都可以通过查找模式轻松解决或至少启动。
那么这里的模式是什么?
模式是数组索引与该位置元素之间的关系。
每个有0的索引都有1个,所以arr [0] [0]是1.看那里的模式?
其中[1]的每个索引都有2.所以arr [0] [1],arr [1] [0]和arr [1] [1]是2,同样是3的条件。
阵列的大小也以相同的方式定义。 3,将[3] [3]矩阵 希望有所帮助。 :)

您正在寻找类似的东西

int m =//input;
    int[][] arr = new int[m][m];
for(int i=0;i<m;i++){
    for(int j=0;j<m;j++){
        if(i>=j)
        arr[i][j]=i;
        else
            arr[i][j]=j;
        System.out.print(arr[i][j]);
    }
    System.out.println();
}