zoukankan      html  css  js  c++  java
  • 顺时针打印矩阵

    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;
      
        }
    };
  • 相关阅读:
    GUI的最终选择Tkinter模块初级篇
    JavaScript的进阶篇
    html标签详解
    docker使用自定义镜像zabbix服务
    Django之url定义和ORM框架的使用
    zabbix实现企业微信监控报警
    centos6 搭建nginx实现负载均衡
    mysql数据库进阶篇
    Linux运维之Ansible自动化运维管理工具
    php菜刀分析学习
  • 原文地址:https://www.cnblogs.com/cgy1012/p/11387948.html
Copyright © 2011-2022 走看看