rotate-image

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

Rotate the image by 90 degrees (clockwise).

//给定一个n*n的矩阵,顺时针旋转90度

class Solution {
public:
    void rotate(vector<vector<int> > &matrix) {
        if(matrix.size()==0) return ;
        
        int n = matrix.size();
        
        for(int i =0;i<n;++i)
            for(int j=0;j<n-i;j++){
                int temp = matrix[i][j];
                matrix[i][j] = matrix[n-1-j][n-1-i];
                matrix[n-1-j][n-1-i] = temp;
            }
        
        for(int i =0;i < n/2;++i)
            for(int j = 0;j < n;++j){
                int temp = matrix[i][j];
                matrix[i][j] = matrix[n-1-i][j];
                matrix[n-1-i][j] = temp;
            }
           
    }
};

 

posted on 2017-03-07 12:14  123_123  阅读(145)  评论(0编辑  收藏  举报