题解 | #顺时针旋转矩阵#
顺时针旋转矩阵
https://www.nowcoder.com/practice/2e95333fbdd4451395066957e24909cc
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 vector<vector<int> > arr(n); for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { arr[i].push_back(mat[j][i]); } reverse(arr[i].begin(),arr[i].end()); } return arr; } };
将矩阵旋转90度,根据结果可以发现,只不过是将每一列的元素组成一行,然后逆转,我们用这个特性,使用新的数组便可以得出结果。