leetcode:Rotate Image (旋转矩阵)【面试算法题】

原创 2013年12月03日 20:03:57

题目:

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?

题意:逆时针旋转矩阵,原地旋转,意思是不能使用额外的空间存储矩阵。





矩阵是以中心点旋转,将矩阵分成四块,遍历其中的一块数据,旋转替换其他块中对应的数据。

要替换的值的下标其实不复杂,画一个图就很容易算出。

class Solution {
public:
    void rotate(vector<vector<int> > &matrix) {
        int n=matrix.size();
        for(int i=0;i<n/2;++i) {
            for(int j=0;j<(n+1)/2;++j) {
                int temp=matrix[j][n-i-1];
                matrix[j][n-i-1]=matrix[i][j];
                matrix[i][j]=matrix[n-j-1][i];
                matrix[n-j-1][i]=matrix[n-i-1][n-j-1];
                matrix[n-i-1][n-j-1]=temp;
              }
        }
    }
};
// blog.csdn.net/havenoidea  


题解目录

相关文章推荐

剑指offer 面试题20:顺时针打印矩阵及其变形(LeetCode54. Spiral Matrix旋转矩阵) 题解

剑指offer 面试题20:顺时针打印矩阵 题目描述: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 ...

[LeetCode] Spiral Matrix 旋转打印矩阵

Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or...

Rotate Image 旋转矩阵 @LeetCode

貌似是careercup原题 package Level4; /** * Rotate Image * * You are given an n x n 2D matrix repr...

leetcode 矩阵旋转

昨天做了矩阵旋转,刚开始的思路真心不对,还真想着要转呢。 后来才意识到不能真转,实现起来比较困难,就算真的实现了效率也不会高。 然后还是学习了别人的方法...

LeetCode Rotate Image旋转图像

其实题目更好理解为旋转一个矩阵的下标90°。实际问题实际分析,这里不用图形学的选择矩阵的计算方法了。 关键是要把下标计算好,原矩阵的数值应该对应到新的旋转矩阵的那个位置,设计好公式就很容易计算了。 ...

Rotate Image -- LeetCode

原题链接: http://oj.leetcode.com/problems/rotate-image/  这道题虽然操作起来有一点繁琐,但是思路比较简单,就是考察一下数组的基本操作。基本思路是把图片分...

原地旋转矩阵

题目: 给定一个大小为N*N的矩阵A,如何在空间复杂度为O(1)的情况下,将矩阵顺时针旋转90度? 解析: 对于矩阵旋转,最容易想到的便是利用一个大小同样为N*N的临时矩阵T,将原矩阵A[i][...
  • acaiwlj
  • acaiwlj
  • 2013年09月08日 11:04
  • 878

[LeetCode]—Rotate Image 矩阵90度翻转

Rotate Image

leetcode 48. Rotate Image(矩阵旋转)

You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise)....

旋转矩阵(Rotate Matrix)的性质分析

学过矩阵理论或者线性代数的肯定知道正交矩阵(orthogonal matrix)是一个非常好的矩阵,为什么这么说?原因有一下几点: 正交矩阵每一列都是单位矩阵,并且两两正交。最简单的正交矩阵就是...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leetcode:Rotate Image (旋转矩阵)【面试算法题】
举报原因:
原因补充:

(最多只允许输入30个字)