leetcode48. Rotate Image

来源:互联网 发布:淘宝客机器人手机版 编辑:程序博客网 时间:2024/05/16 14:05

leetcode48. Rotate Image

class Solution {public:    void rotate(vector<vector<int>>& matrix) {        int centralCircle = matrix.size() / 2 ;        for(int i=0;i<centralCircle;i++){            rotateCircle(matrix,i);        }    }     void rotateCircle(vector<vector<int>>& matrix,int circle) {         if(matrix.size()<=1) return ;         int xStart = circle;         int yStart = circle;         int xEnd = matrix.size() - 1 - circle;         int yEnd = matrix.size() - 1 - circle;         int temp = matrix[xStart][yStart];         //rotate corner         int maxIndex = xEnd - xStart;         //rotate the other         for(int y=0;y<maxIndex;y++){             temp = matrix[xStart][yStart+y];             matrix[xStart][yStart+y] = matrix[xEnd - y][yStart];              matrix[xEnd - y][yStart] = matrix[xEnd][yEnd - y];             matrix[xEnd][yEnd - y] = matrix[xStart+y][yEnd];             matrix[xStart+y][yEnd] = temp;         }     }};