题目描述:
You are given an n x n 2D matrix representing an image.
Rotate the image by 90 degrees (clockwise).
Follow up:
Could you do this in-place?
思路解析:
旋转赋值交换就可以了
代码:
public class Solution {
public void rotate(int[][] matrix) {
if(matrix == null || matrix.length==0)
return ;
for(int i=0;i<matrix.length/2;i++){
for(int j=0;j<Math.ceil(((double)matrix.length)/2);j++){
int temp = matrix[i][j];
matrix[i][j] = matrix[matrix.length-1-j][i];
matrix[matrix.length-1-j][i] = matrix[matrix.length-1-i][matrix.length-1-j];
matrix[matrix.length-1-i][matrix.length-1-j] = matrix[j][matrix.length-i-1];
matrix[j][matrix.length-i-1] = temp;
}
}
}
}