LeetCode 048 Rotate Image

题目要求:Rotate Image

You are given an n x n 2D matrix representing an image.

Rotate the image by 90 degrees (clockwise).

Follow up:
Could you do this in-place?

 

LeetCode 048 Rotate Image

 

代码如下:

class Solution {

public:

    void rotate(vector<vector<int> > &matrix) {

        

        const int n = matrix.size();

        

        for(int i = 0; i < n; i++)  //沿着副对角线反转

            for(int j = 0; j < n - i; j++)

                swap(matrix[i][j], matrix[n - 1 - j][n - 1 - i]);

                

        for(int i = 0; i < n / 2; i++)//沿着水平中线反转

            for(int j = 0; j < n; j++)

                swap(matrix[i][j], matrix[n - 1 - i][j]);

        

    }

};

 

你可能感兴趣的:(LeetCode)