Java函数来构建以下方阵
我需要一个函数,它以(int n)作为函数参数,构建以下矩阵: 在文本中Java函数来构建以下方阵,java,arrays,matrix,multidimensional-array,Java,Arrays,Matrix,Multidimensional Array,我需要一个函数,它以(int n)作为函数参数,构建以下矩阵: 在文本中 1, 6, 14, 20, 24, 10, 2, 7, 15, 21, 17, 11, 3, 8, 16, 22, 18, 12, 4, 9, 25, 23, 19, 13, 5 所需代码: static void Print(int n) { int[][] matrix= new int[n][n]; int i,j; // Help needed here to build th
1, 6, 14, 20, 24,
10, 2, 7, 15, 21,
17, 11, 3, 8, 16,
22, 18, 12, 4, 9,
25, 23, 19, 13, 5
所需代码:
static void Print(int n)
{
int[][] matrix= new int[n][n];
int i,j;
// Help needed here to build the matrix e.g. for(i=0;i<n*n;i++) {…}
//To print it
for (i=0; i<n; i++)
{
for(j=0; j<n; j++)
System.out.print(matrix[i][j]+" ");
System.out.println();
}
}
静态无效打印(int n)
{
int[][]矩阵=新的int[n][n];
int i,j;
//此处需要帮助来构建矩阵,例如for(i=0;ipublic class Main{
公共静态void生成矩阵(int n){
int[][]矩阵=新的int[n][n];
int i,j;
int x=0,y=0,flipX=0,flipY=0;
对于(int k=0;k=n){
y=++flipX;
x=0;
}
如果(y>=n),则为else{
x=++flipY;
y=0;
}
矩阵[x++][y++]=k+1;
}
//打印
int-sizeOfMaxDigit=String.valueOf(n*n).length();
对于(i=0;iStackoverflow不是免费的代码编写服务。您自己尝试过什么?是的,我尝试过。我认为发布垃圾代码是没有用的。一个解释可能对OP@GBlodgett我完全同意。但我故意发布了一个模糊的解决方案,混合了中缀和后缀增量,希望OP能花些时间答案在他们的调试器中…@SlawomirChodnicki这实际上不是家庭作业。我试图在前几年的试卷前解决2个等级的问题。@SlawomirChodnicki我喜欢你的解决方案:D.@LoneWolf好的,学术练习:)
class DP
{
static void Print(int n)
{
int[][] matrix= new int[n][n];
int i,j,x=0;
for(i=0;i<matrix.length;i++)
{
boolean flag= false;
for(j=0;j<matrix.length;j++)
{
if (flag) { x++; matrix[i][j]=x;}
if (!flag)
{x=Math.abs(i - j) + 1; matrix[i][j] = x; flag=true;}
}
}
for (i=0; i<n; i++)
{
for(j=0; j<n; j++)
System.out.print(matrix[i][j]+" ");
System.out.println();
}
}
public static void main (String[] args)
{
int n=4;
Print();
}
1
1 3
4 2
1 4 8
6 2 5
9 7 3
1 5 11 15
8 2 6 12
13 9 3 7
16 14 10 4
1 6 14 20 24
10 2 7 15 21
17 11 3 8 16
22 18 12 4 9
25 23 19 13 5
1 7 17 25 31 35
12 2 8 18 26 32
21 13 3 9 19 27
28 22 14 4 10 20
33 29 23 15 5 11
36 34 30 24 16 6
1 11 29 45 59 71 81 89 95 99
20 2 12 30 46 60 72 82 90 96
37 21 3 13 31 47 61 73 83 91
52 38 22 4 14 32 48 62 74 84
65 53 39 23 5 15 33 49 63 75
76 66 54 40 24 6 16 34 50 64
85 77 67 55 41 25 7 17 35 51
92 86 78 68 56 42 26 8 18 36
97 93 87 79 69 57 43 27 9 19
100 98 94 88 80 70 58 44 28 10