题解 | #顺时针旋转矩阵,空间O(1)#

顺时针旋转矩阵

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

import java.util.*;

public class Solution {
    //[1,2,3]   //[7,4,1]
    //[4,5,6]   //[8,5,2]
    //[7,8,9]   //[9,6,3]
    
    //[1,4,7]   //[]
    //[2,5,8]   //[]
    //[3,6,9]   //[]
    public int[][] rotateMatrix(int[][] mat, int n) {
        if(mat == null || n == 0) return mat ;
        //主对角线翻转
        for(int i = 0 ; i < n ; i ++) {
            for(int j = i ; j < n ; j ++) {
                int t = mat[i][j] ;
                mat[i][j] = mat[j][i] ;
                mat[j][i] = t ;
            }
        }
        //左右翻转
        for(int i = 0 ; i < n ; i ++) {
            int s = 0 , e = n - 1 ;
            while(s < e) {
                int t = mat[i][s] ;
                mat[i][s] = mat[i][e] ;
                mat[i][e] = t ;
                s ++ ;
                e -- ;
            }
        }
        return mat ;
    }
}

一个菜鸟的算法刷题记录 文章被收录于专栏

分享一个菜鸟的成长记录

全部评论

相关推荐

AAA不喝拿铁:西电本硕学历没问题,但是项目名字首先得改虽然一眼能看出来是点评但是不能演都不演就直接给面试官端上去。技术点全是redis显得这像redis的课程实验,也要改。我根据真实面经整理得到的最全(高/中/低频)面试题,需要的牛u可以订阅一手我的专栏,祝好运
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务