90度旋转矩阵

先左右对称反转,再沿右对角线对折,面试记住就行了

代码:

class Solution {
public:
    void rotate(vector<vector<int>>& matrix) {
        int n=matrix.size();
        for(int i=0;i<n;++i){   //倒转每行
            reverse(matrix[i].begin(),matrix[i].end());
        }
        for(int i=0;i<n;++i){   //沿右对角线对折
            for(int j=0;i+j<n-1;++j){
                swap(matrix[i][j],matrix[n-1-j][n-1-i]);
            }
        }
    }
};

 

posted @ 2020-02-20 01:24  NeoZy  阅读(610)  评论(0)    收藏  举报