题意
将一个 n∗n 的矩阵顺时针旋转 90 度
思路
因为还要使用原有矩阵的数,所以说将结果存于一个中间矩阵,然后最后复制给原有矩阵.
代码
class Solution {
public:
void rotate(vector<vector<int>>& matrix) {
size_t len = matrix.size();
vector<vector<int> >ans;
for(int i = 0; i < len; i++){
vector<int>temp;
for(int j = 0; j < len; j++){
temp.push_back(matrix[len - j - 1][i]);
}
ans.push_back(temp);
}
for(int i = 0; i < len; i++){
for(int j = 0; j < len; j++){
matrix[i][j] = ans[i][j];
}
}
}
};