黑马程序员技术交流社区

标题: 这个结果 [打印本页]

作者: sssssssx    时间: 2016-5-30 00:08
标题: 这个结果
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);
                        }
                }
        }




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2