public class LatinSquareMatrix {
//方阵阶数
int n;
//矩阵数组
int[][] arr ;
public LatinSquareMatrix(int n) {
// TODO Auto-generated constructor stub
this.n = n;
arr = new int[n][n];
makeMatrix(n);
}
public void makeMatrix(int n){
for (int i=0;i<n;i++){
arr[0][i] = i+1;
}
for (int j=1;j<n;j++){
for (int k=0;k<n;k++){
if (arr[j-1][k]==n){
arr[j][k]=1;
} else {
arr[j][k]=arr[j-1][k]+1;
}
}
}
}
public void printMatrix(){
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
System.out.print(arr[i][j]);
}
System.out.println();
}
}
public static void main(String[] args) {
LatinSquareMatrix lsm = new LatinSquareMatrix(6);
lsm.printMatrix();
}
}
结果:
123456
234561
345612
456123
561234
612345