zoukankan      html  css  js  c++  java
  • LeetCode OJ--Rotate Image

    http://oj.leetcode.com/problems/rotate-image/

    将矩阵顺时针旋转90度。要求为原地算法。

    注意对输入的测试,矩阵为空,长度为1,为2时……

    #include <iostream>
    #include <vector>
    using namespace std;
    
    class Solution {
    public:
        void rotate(vector<vector<int> > &matrix) {
            if(matrix.empty())
                return;
            vector<vector<int> >matrixB;
            vector<int> onePiece;
    
            int len = matrix[0].size();
            if(len<=1)
            {
                return;
            }
            for(int j = 0;j<len;j++)
            {
                onePiece.clear();
                for(int i = 0;i<len;i++)
                {
                    onePiece.push_back(matrix[len-1-i][j]);
                }
                matrixB.push_back(onePiece);
            }
            matrix = matrixB;
        }
    };
    
    int main()
    {
        Solution myS;
        vector<vector<int> > matrix;
        vector<int> onePiece;
        onePiece.clear();
        onePiece.push_back(1);
        matrix.push_back(onePiece);
        /*onePiece.push_back(2);
        onePiece.push_back(5);
        matrix.push_back(onePiece);
        onePiece.clear();
        onePiece.push_back(3);
        onePiece.push_back(4);
        onePiece.push_back(6);
        matrix.push_back(onePiece);
    
        onePiece.clear();
        onePiece.push_back(8);
        onePiece.push_back(9);
        onePiece.push_back(10);*/
        //matrix.push_back(onePiece);
    
        myS.rotate(matrix);
        return 0;
    }

    原地算法如下:

  • 相关阅读:
    第一次作业
    第0次作业—姚舜禹17-1
    第三周作业
    第二周作业
    第一周作业
    第零周作业
    第三周作业
    第二周作业
    第一周作业
    第0次作业
  • 原文地址:https://www.cnblogs.com/qingcheng/p/3496364.html
Copyright © 2011-2022 走看看