美文网首页
LeedCode 旋转图像

LeedCode 旋转图像

作者: 红枣枸杞OP | 来源:发表于2018-05-28 17:41 被阅读0次

LeetCode 旋转图像

给定一个 *n *× n 的二维矩阵表示一个图像。
将图像顺时针旋转 90 度。

思路:用改变下标的方式进行旋转,但是要注意下标的计算。用循环的方法从外层一个个数倒序旋转,因为角落的同一个数涉及了不同的行列,假设每层有j个数则需要j-1次交换,-1是指减去角落数的重复交换。假设有一个n*n的二维数组,所以数组一共有n/2层,所以就要用两个嵌套循环,将每一层的数字交换后,进行再里面一层的数据交换。

class Solution {
    public void rotate(int[][] matrix) {
        int c = matrix.length;
        System.out.print(c);
        int i,j;
        int temp = 0;
        for(i=0;i<c/2;i++)
            for(j=i;j<c-i-1;j++)
            {
                temp = matrix[i][j];
                matrix[i][j] = matrix[c-1-j][i];//左-->上
                matrix[c-j-1][i] = matrix[c-i-1][c-1-j];//下-->左
                matrix[c-i-1][c-1-j] = matrix[j][c-i-1];//右-->下
                matrix[j][c-i-1] = temp;//上-->右
            }
        
    }
}

相关文章

  • LeedCode 旋转图像

    LeetCode 旋转图像 给定一个 *n *× n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 思路...

  • 旋转图像

    一个n x n的二维矩阵表示一个图像,将图像顺时针旋转90度。要求in-place,所以就不能用额外的空间了。 解...

  • 旋转图像

    给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味...

  • 旋转图像

    题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/rota...

  • 旋转图像

    给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味...

  • 旋转图像

    更多精彩内容,请关注【力扣中等题】。 题目 难度:★★★☆☆类型:二维矩阵,几何方法:矩阵操作 给定一个 n × ...

  • 旋转图像

    给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味...

  • 旋转图像

    给定一个 *n *× n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这...

  • 图像旋转

    题目需求 给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这...

  • 旋转图像

    给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味...

网友评论

      本文标题:LeedCode 旋转图像

      本文链接:https://www.haomeiwen.com/subject/pkggjftx.html