90度旋转矩阵
先左右对称反转,再沿右对角线对折,面试记住就行了
代码:
class Solution { public: void rotate(vector<vector<int>>& matrix) { int n=matrix.size(); for(int i=0;i<n;++i){ //倒转每行 reverse(matrix[i].begin(),matrix[i].end()); } for(int i=0;i<n;++i){ //沿右对角线对折 for(int j=0;i+j<n-1;++j){ swap(matrix[i][j],matrix[n-1-j][n-1-i]); } } } };
进击的小🐴农

浙公网安备 33010602011771号