Rotate Image
分析:给定一个二维数组a[n][n]顺时针旋转90度,要解决这个问题,无疑,第一件事儿就是找规律。
代码
public class Solution {
public void rotate(int[][] matrix) {
for(int i = 0; i < matrix.length; i++){
for(int j = i; j < matrix[0].length; j++){//先是以对角线为对称轴,进行交换
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
for(int i = 0; i < matrix.length; i++){
for(int j = 0; j < matrix.length/2; j++){ // 再是以中心线为对称轴进行交换
int temp = matrix[i][j];
matrix[i][j] = matrix[i][matrix.length - 1 - j];
matrix[i][matrix.length - 1 - j] = temp;
}
}
}
}