题解 | 顺时针旋转矩阵 考验眼力。注意参数传参时的引用符号
顺时针旋转矩阵
https://www.nowcoder.com/practice/2e95333fbdd4451395066957e24909cc
#include <algorithm>
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param mat int整型vector<vector<>>
* @param n int整型
* @return int整型vector<vector<>>
*/
vector<vector<int> > rotateMatrix(vector<vector<int> >& mat, int n) {
// write code here
//先转置 再翻转每一行
if(n==1)return mat;
//vector<vector<int> > res;
//转置 只用操作上三角
for(int i=0;i<n-1;i++){
for(int j=i;j<n;j++){
swap(mat[i][j],mat[j][i]);
}
}
for(int i=0;i<n;i++){
reverse( mat[i].begin(), mat[i].end());
}
return mat;
}
void swap(int &a,int& b){
int tmp=a;
a=b;
b=tmp;
}
};
