import java.util.*; //经过分析可以得知矩阵经过两步就可以旋转90度 //1.先进性上下翻转 //2.再进行置换 public class Solution { public int[][] rotateMatrix(int[][] mat, int n) { // write code here int top = 0; int tail = n - 1; for (; top < tail; top++, tail--){ //先进性上下翻转 for (int i = 0; i < n; i++){ mat[top][i] = mat[top][i] ^ mat[tail][i]; mat[tail][i] = mat[top][i] ^ mat[tail][i]; mat[top][i] = mat[top][i] ^ mat[tail][i]; } } for (int i = 0; i < n; i++){ for (int j = n - 1; j > i; j--){ mat[i][j] = mat[i][j] ^ mat[j][i]; mat[j][i] = mat[i][j] ^ mat[j][i]; mat[i][j] = mat[i][j] ^ mat[j][i]; } } return mat; } }