zoukankan      html  css  js  c++  java
  • leecode第五十九题(螺旋矩阵 II)

    class Solution {
    public:
        vector<vector<int>> generateMatrix(int n) {
            if(n==0)//特殊情况
            {
                vector<vector<int>> empty;
                return empty;
            }
            
            vector<vector<int>> res;
            for(int i=0;i<n;i++)//要先初始化
            {
                vector<int> zeros;
                for(int j=0;j<n;j++)
                    zeros.push_back(0);
                res.push_back(zeros);
            }
                
            int num=1;
            for(int i=0;i<=(n-1)/2;i++)
            {
                for(int j=i;j<(n-i);j++)//还是分析,第一行
                {
                    res[i][j]=num;
                    num++;
                }
                
                for(int j=i+1;j<(n-i);j++)//最后一列
                {
                    res[j][n-1-i]=num;
                    num++;
                }
                
                for(int j=n-2-i;j>=i;j--)//最后一行
                {
                    res[n-1-i][j]=num;
                    num++;
                }
                
                for(int j=n-2-i;j>i;j--)//第一列
                {
                    res[j][i]=num;
                    num++;
                }
            }
            
            return res;
        }
    };

     分析:

    今天散会早,忍不住又做了一道。和上个题异曲同工,但是这里需要初始化一下。

  • 相关阅读:
    POJ 1995
    POJ 3233
    HDU 2815
    POJ 2417
    POJ 3243
    HDU 3579 线性同余方程组
    HDU 1573
    POJ 2115
    POJ 2891
    HDU 2035 不忍直视的水
  • 原文地址:https://www.cnblogs.com/CJT-blog/p/10596914.html
Copyright © 2011-2022 走看看