【LeetCode热题100】【矩阵】旋转图像

2024-04-16 08:16:39 浏览数 (4)

题目链接:48. 旋转图像 - 力扣(LeetCode)

要将一个矩阵顺时针旋转90°,数学公式是new[j][n-i-1]=old[i][j],要原地翻转的话,可以先水平翻转,即变成m[n-i-1][j],再主对角线翻转(即转置),变成m[j][n-i-1]

代码语言:javascript复制
class Solution {
public:
    void rotate(vector<vector<int> > &matrix) {
        int n = matrix.size();
        for (int i = 0; i < n / 2;   i)
            for (int j = 0; j < n;   j)
                swap(matrix[i][j], matrix[n - i - 1][j]);
        for (int i = 0; i < n;   i)
            for (int j = 0; j < i;   j)
                swap(matrix[i][j], matrix[j][i]);
    }
};

0 人点赞