文章

27

粉丝

492

获赞

10

访问

257.1k

头像
小白一枚
P1377 北京航空航天大学机试题
发布于2020年3月30日 11:01
阅读数 11.3k

本题总体思路为只要写出将数组旋转90的代码就行,因为旋转180度思路是一样的,无非就是把旋转90的方阵再次旋转90,270也一样。

所以难点在于写出旋转90的方法,如何找出原数组和旋转90的数组的关系,分析如下:

        原数组
         1 2 3
         4 5 6
         7 8 9

        旋转90的数组            步骤1:将原数组先做行列变化,即行先变为列
         7 4 1                         得到   1 4 7
         8 5 2                                2 5 8
         9 6 3                                3 6 9

                                                        步骤2:对于行列变化后的数组,将列从后往前输出,即倒序输出,就得到变化后的方阵

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static int[][] turn_90(int a[][], int n) {
        int[][] c = new int[n + 1][n + 1]; //用于存放变化后的新数组
        for (int i = 1; i <= n; i++) {
            int k = 1;
            for (int j = n; j >= 1; j--) {  //列倒序输出
                c[i][k++] = a[j][i];  //行列变化
      ...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发