顺时针旋转矩阵

题目描述

有一个NxN整数矩阵,请编写一个算法,将矩阵顺时针旋转90度。

给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后的NxN矩阵,保证N小于等于300。

示例1

输入

复制
[[1,2,3],[4,5,6],[7,8,9]],3

返回值

 
复制
[[7,4,1],[8,5,2],[9,6,3]]

思路:利用行和列找出其关系,然后将数据弄到新数组即可

代码:

 private static int[][] rotateMatrix(int[][] mat, int n) {
        int col = mat[0].length;
        int row = mat.length;

        int[][] newmat = new int[col][row];
        for (int i = 0; i < col; i++) {
            for (int j = 0; j < row; j++) {
                newmat[i][j] = mat[row - j - 1][i];
            }
        }

        return newmat;
    }








原文地址:https://www.cnblogs.com/dongma/p/14197911.html