LeetCode 048 Rotate Image

来源:互联网 发布:java所有集合类 编辑:程序博客网 时间:2024/05/16 06:00

题目描述

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 static void rotate(int[][] matrix) {        if (matrix == null || matrix.length == 0 || matrix[0].length == 0) {            return;        }        final int mx = matrix.length;        final int my = matrix[0].length;        int x, y;        int t;        int _my = my - 1;        for (x = 0; x < mx - 1; x++) {            for (y = 0; y < _my; y++) {                int ny = mx - 1 - x;                int nx = my - 1 - y;                t = matrix[y][x];                matrix[y][x] = matrix[ny][nx];                matrix[ny][nx] = t;            }            _my--;        }        for (x = 0; x < mx; x++) {            for (y = 0; y < my / 2; y++) {                int ny = my - 1 - y;                int nx = x;                t = matrix[y][x];                matrix[y][x] = matrix[ny][nx];                matrix[ny][nx] = t;            }        }    }
1 0