public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入n");
int n = sc.nextInt();
int count = 0;
int[][] arr = new int[n][n];
int min = 1;
sort(n,arr,count,min);
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length; j++) {
System.out.print(arr[i][j] + "\t");
}
System.out.println();
}
}
public static void sort(int n,int[][] arr,int count,int min) {
for (int i = 0;i <= (n-1)*4;i++) {
if (n == 0) {
break;
}
if (n == 1) {
arr[count][count] = min;
break;
}
if (i < (n-1)) {
arr[count][count + i%(n - 1)] = min++;
}
else if (i < (n -1)*2) {
arr[count + i%(n -1)][count + (n -1)] = min++;
}
else if (i < (n - 1)*3) {
arr[count + (n - 1)][count + n - 1 -i%(n - 1)] = min++;
}
else if (i < (n - 1)*4) {
arr[count + n - 1 - i%(n - 1)][count] = min++;
}
else {
sort(n - 2,arr,++count,min);
}
}
} |
|