leetCode 48 旋转图像(数组)

题目链接:点击查看

题目描述:

给定一个 n × n 的矩阵,求它顺时针旋转 90 度的结果,且必须在原矩阵上修改( in-place )。怎样能够尽量不创建额外储存空间呢?
 
输入输出:
 
输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[[7,4,1],[8,5,2],[9,6,3]]
输入:matrix = [[1,2],[3,4]]
输出:[[3,1],[4,2]]

题目分析:

每次只考虑四个间隔 90 度的位置,可以进行 O ( 1 ) 额外空间的旋转。详见如下代码。
 
代码:
void rotate(vector>&matrix)
{
   int temp=0,n=matrix.size()-1;
   for(int i=0;i<=n/2;++i)
   {
      for(int j=i;j

你可能感兴趣的:(早年算法竞赛学过的知识点,算法,leetcode,数组,旋转)