題目傳送門
思路:
先按對角線交換。
後每一行以中間的點爲對稱軸交換。
class Solution
{
public:
void rotate(vector<vector<int>>& matrix)
{
int n=matrix.size();
for(int i=0;i<n;i++)
{
for(int j=0;j<i;j++)
{
int temp=matrix[i][j];
matrix[i][j]=matrix[j][i];
matrix[j][i]=temp;
}
}
for(int j=0;j<n/2;j++)
{
for(int i=0;i<n;i++)
{
int temp=matrix[i][j];
matrix[i][j]=matrix[i][n-1-j];
matrix[i][n-1-j]=temp;
}
}
}
};