给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。
你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。
------来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/rotate-image
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
-----------------------------------------------------------------------------------------------------
class Solution {
public void rotate(int[][] matrix) {
int x=matrix.length;
int y= matrix[0].length;
int temp = 0;
for(int i=0;i<x/2;i++){
for(int j=0;j<y;j++){
temp=matrix[i][j];
matrix[i][j]=matrix[x-1-i][j];
matrix[x-1-i][j]=temp;
}
}
int[][] m=new int[x][y];
for(int i=0;i<x;i++)
for(int j=0;j<y;j++)
m[i][j]=0;
for(int i=0;i<x;i++){
for(int j=0;j<i;j++){
if(m[i][j]==0) {
temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
m[i][j] = 1;
}
}
}
return;
}
}