当前位置: 首页 > news >正文

深圳企业网站制作制作生产营销网站开发联系方式

深圳企业网站制作制作,生产营销网站开发联系方式,重庆网络公司网站建设,c 做网站 知乎【题干】 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 【思路】 不难注意到,每进行一次转向,都有一行/列被输出(并失效);既然已经失效,那我…

【题干】

给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。

【思路】

  • 不难注意到,每进行一次转向,都有一行/列被输出(并失效);
  • 既然已经失效,那我们不妨就将这一行/列删去,当然并不是真的删去,其实只要让其无法再被访问(遍历)到就可以了;
  • 那么我们是如何限定遍历的范围的呢,是给遍历指针设定上下界,因此,当我们不想让指针走到某一行/列,用上限把该行/列划到范围之外就可以了;
  • 由于给出的不一定是方阵,所以要为行和列各设定两个变量用于记录当前可遍历范围的下界与上界;
  • 当行方向或列方向之中的某一个范围已经变为0时,意味着矩阵中已经不再有可被遍历的元素,则我们的目的已经达成了。

【题解】

class Solution {
public:vector<int> spiralOrder(vector<vector<int>>& matrix) {vector <int> ans;if(matrix.empty()) return ans; //若数组为空,直接返回答案int u = 0; //赋值上下左右边界int d = matrix.size() - 1;int l = 0;int r = matrix[0].size() - 1;while(true){for(int i = l; i <= r; ++i) ans.push_back(matrix[u][i]); //向右移动直到最右if(++ u > d) break; //重新设定上边界,若上边界大于下边界,则遍历遍历完成,下同for(int i = u; i <= d; ++i) ans.push_back(matrix[i][r]); //向下if(-- r < l) break; //重新设定有边界for(int i = r; i >= l; --i) ans.push_back(matrix[d][i]); //向左if(-- d < u) break; //重新设定下边界for(int i = d; i >= u; --i) ans.push_back(matrix[i][l]); //向上if(++ l > r) break; //重新设定左边界}return ans;}
};

http://www.yayakq.cn/news/612199/

相关文章:

  • 三里屯网站建设公司群辉 wordpress 端口
  • 网站栏目名php网站开发环境的设置
  • 有哪些网站上可以做试卷wordpress换电脑
  • 湖南智能网站建设中国空间站太小了
  • 有没有网站开发软件企业做网站的流程
  • 海外兼职网站建设贵州西能电力建设有限公司网站
  • 网站如何在推广wordpress查询数据库乱码
  • h5可以制作公司网站吗中山营销网站建设联系方式
  • 网站开发记什么费用永嘉县住房建设局网站
  • 看不到的网站高端定制网站公司哪家好
  • 关于学院网站建设的意见上海自贸区注册公司优惠政策
  • 进行网站推广有哪些常用方法重庆企业网站建设联系电话
  • 手机有软件做ppt下载网站有哪些内容吗河源网站建设1993seo
  • 站长权重关键词排名什么意思
  • js实现网站简体转繁体上海外贸营销网站建设网站
  • 在哪里做网站设计北京市网站建设 维护推荐
  • 外贸网站建设服务机构湖北seo服务
  • 怎么搭建自己的网站卖货免费做h5的网站
  • 南京学习做网站python做网站步骤
  • 有什么好的免费网站做教育宣传网站建设 软件开发
  • 做体彩网站怎么做怎么自己优化网站
  • 手机模板网站生成制作软件wordpress 视图插件
  • 网站404网页界面psd源文件模板广州外贸网站制作
  • wordpress查看网站内容建筑工程网名大全
  • 企业网站推广论述深圳品牌设计机构
  • 慈溪企业网站seo个人中心页面设计图片
  • 网站流量来源合作网站制作
  • 基础建设审计网站摄影网站的意义
  • 长沙网站建设 个人京东网站建设
  • 热e国产-网站正在建设中-手机版企业信用报告网上查询