• 顺时针打印矩阵


    1.课本简单很详细! 容器用起来和数组差不多

    class Solution {
    public:
        //这个是要根据容器返回值来判断的!!
        vector<int> printMatrix(vector<vector<int> > matrix) {
        //是二维的容器  允许下标
        //判断条件     
         vector<int> res;//一开始定义是空的  
         if(matrix.empty())  
          return  res;  //返回空容器即可
         int rows=matrix.size();  
         int colums=matrix[0].size(); 
     
         int start=0;   
        while ((2*start<rows)&&(2*start<colums)) //这个for循环是圈数  //现在这种情况传过来传过去的麻烦 放一起吧
         {
          int endx=colums-1-start; //每次的终止行号
          int endy=rows-1-start; //每次的终止列号   //弄成实际的有好处
             
          //一 打印从左向右  这个是必须的!
            for(int i=start;i<=endx;i++)
            {
             int number=matrix[start][i];  
             res.push_back(number);   
            }
          //二  打印从右向下   判断终止行号大于起止行号   
             
            if(start<endy)
           {
            for(int i=start+1;i<=endy;i++)//i代表列
            {
             int number=matrix[i][endx];  
             res.push_back(number);   
            }   
           }
             //三  打印从右向左   判断终止行号大于起止行号   终止列号大于起止列号 
            if(start<endy&&start<endx)
           {
            for(int i=endx-1;i>=start;--i)//i代表行
            {
             int number=matrix[endy][i];  
             res.push_back(number);   
            }   
           }
                  
           //四 打印从下向上   判断终止行号大于起止行号   终止列号比起止列号至少大2  
            if(start<endx&& (endy-start>1))//至少大于等于2 
           {
            for(int i=endy-1;i>=start+1;--i)//i代表列  //不用打到头
            {
             int number=matrix[i][start];  
             res.push_back(number);   
            }   
           }  
     
             start++;   
         }
            
            return res;
      
        }
    };
  • 相关阅读:
    PHP中判断变量为空的几种方法小结
    PHP实现验证码
    video.js使用技巧
    js实现监听浏览器窗口大小改变事件
    判断不同浏览器,加载不同的css和js文件
    Meta标签详解
    js获取浏览器和设备相关width(屏幕的宽度)
    K-th Symbol in Grammar
    Reverse Linked List
    二叉查找树 BST
  • 原文地址:https://www.cnblogs.com/cgy1012/p/11387948.html
Copyright © 2020-2023  润新知