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?
原题链接:https://oj.leetcode.com/problems/rotate-image/
题目:给定一个n x n的二维矩阵代表一个图像。
将图像顺时针翻转90度。
比如,输入和输出如下:
Input:[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]
Expected:[[13,9,5,1],[14,10,6,2],[15,11,7,3],[16,12,8,4]]
public void rotate(int[][] matrix) { int len = matrix.length; for (int i = 0; i < len / 2; i++) { for (int j = i; j < len - i - 1; j++) { int tmp = matrix[i][j]; matrix[i][j] = matrix[len - j - 1][i]; matrix[len - j - 1][i] = matrix[len - i - 1][len - j - 1]; matrix[len - i - 1][len - j - 1] = matrix[j][len - i - 1]; matrix[j][len - i - 1] = tmp; } } }