题解 | #顺时针旋转矩阵#

顺时针旋转矩阵

http://www.nowcoder.com/practice/2e95333fbdd4451395066957e24909cc


public class Solution {
    //基本要求:增加空间复杂度
    public int[][] rotateMatrix_base(int[][] mat, int n) {
        
        int[][] rotate = new int[n][n];
        
        for(int i=0; i<n; i++){
            for(int j=0; j<n; j++){
                rotate[j][n-1-i] = mat[i][j];
            }
        }
        return rotate;
    }
    //进阶:直接在原矩阵上修改
    public int[][] rotateMatrix(int[][] mat, int n) {
        //对角翻转
        for(int i=0; i<n; i++){
            for(int j=0; j<i; j++){
                int tmp = mat[i][j];
                mat[i][j] = mat[j][i];
                mat[j][i] = tmp;
            }
        }
        //左右翻转
        for(int i=0; i<n; i++){
            for(int j=0; j<n/2; j++){
                int tmp = mat[i][j];
                mat[i][j] = mat[i][n-1-j];
                mat[i][n-1-j] = tmp;
            }
        }
        return mat;
    }
}
全部评论

相关推荐

醒工硬件:1学校那里把xxxxx学院去了,加了学院看着就不像本校 2简历实习和项目稍微精简一下。字太多,面试官看着累 3第一个实习格式和第二个实习不一样。建议换行 4项目描述太详细了,你快把原理图贴上来了。比如可以这样描述:使用yyyy芯片,使用xx拓扑,使用pwm控制频率与占空比,进行了了mos/电感/变压器选型,实现了xx功能 建议把技术栈和你做的较为有亮点的工作归纳出来 5熟悉正反激这个是真的吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务