解题思路:
顺时针旋转矩阵先沿着左对角线反转,再对每一行反转。
逆时针旋转矩阵先沿着右对角线反转,再对每一行反转。
此题为第一种情况。
class Solution {
public void rotate(int[][] matrix) {
int n = matrix.length;
for(int i = 0; i < n; i++){
for(int j = i; j < n; j ++){
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
for(int[] row : matrix){
reverse(row);
}
}
void reverse(int[] arr){
int i = 0, j = arr.length - 1;
while( j > i){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
i++;
j--;
}
}
}