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

前端网站优化cilimao磁力猫

前端网站优化,cilimao磁力猫,企业微网站怎么做,什么是网站主办者顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。 数据范围 矩阵中元素数量 [ 0 , 400 ] [0,400] [0,400]。 样例 输入: [[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12] ]输出:[1,2,3,4,8,12,11,10,9,5,6,7]算…

顺时针打印矩阵


输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。

数据范围

矩阵中元素数量 [ 0 , 400 ] [0,400] [0,400]

样例
输入:
[[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12]
]输出:[1,2,3,4,8,12,11,10,9,5,6,7]
算法思路
  1. 初始化
    • 检查输入矩阵是否为空,若为空则直接返回空结果。
    • 获取矩阵的行数 n 和列数 m
    • 创建一个与矩阵大小相同的二维布尔数组 st,用于标记已经访问过的元素。
    • 定义四个方向的位移数组 dxdy,分别表示上、右、下、左四个方向的移动。
    • 初始化当前位置 (x, y)(0, 0),初始方向 d 为 1(向右)。
  2. 遍历矩阵
    • 循环 n * m 次,每次将当前元素加入结果数组,并标记为已访问。
    • 计算下一个位置的坐标 (a, b)
    • 如果下一个位置超出矩阵边界或已经被访问过,则改变方向(顺时针旋转 90 度)。
    • 更新当前位置 (x, y) 为下一个合法位置。
  3. 返回结果
    • 最终返回存储了螺旋顺序遍历结果的数组。
  • 时间复杂度O(n * m),其中 n 是矩阵的行数,m 是矩阵的列数。算法需要遍历矩阵中的每一个元素一次。
  • 空间复杂度O(n * m),用于存储访问标记的二维数组 st。如果忽略输出结果的空间,额外空间复杂度为 O(n * m)
class Solution {
public:vector<int> printMatrix(vector<vector<int> > matrix) {vector<int> res;if(matrix.empty()) return res;int n = matrix.size(), m = matrix[0].size();vector<vector<bool>> st(n, vector<bool>(m));int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1};int x = 0, y = 0, d = 1;for(int k = 0; k < n * m; k ++){res.push_back(matrix[x][y]);st[x][y] = true;int a = x + dx[d], b = y + dy[d];if(a < 0 || a >= n || b < 0 || b >= m || st[a][b]){d = (d + 1) % 4;a = x + dx[d], b = y + dy[d];}x = a, y = b;}return res;}
};
http://www.ds6.com.cn/news/92523.html

相关文章:

  • 漳州网站开发点博大a优深圳推广公司排行榜
  • 昆明市住房城乡建设委网站南京今天重大新闻事件
  • 萧山人才网手机版重庆seo关键词优化服务
  • 外国s网站建设seo百家论坛
  • 网站开发需求文档做网站找哪家好
  • 抚顺做网站seo技术教程博客
  • 做网站外包公司无锡百姓网推广
  • 做网站加入广告联盟免费建立个人网站官网
  • 网站规划作品seo基础知识培训
  • 2022腾讯云网站建设方案书宁波seo整站优化
  • 轻量云做网站怎么样百度推广登录平台app
  • 58同城济南网站建设网站制作软件
  • 论文中引用网站中免费建立个人网站官网
  • 做网站怎么备份数据百度网址收录提交入口
  • 邢台做网站推广阿里云自助建站
  • 徐州网站开发要多少钱淘宝指数
  • 自己网站如何做关键词排名靠前深圳网络推广seo软件
  • 网站建设 三门峡百度推广费用
  • 如何做好网站管理工作网络营销环境分析主要包括
  • 企业网站建设有没有模板一键清理加速
  • 外国人做旅游攻略网站优秀网页设计作品
  • 长沙模板网站建设企业如何进入网站
  • 广州建站客服招聘茶叶seo网站推广与优化方案
  • 建网站详细教程网络优化器下载
  • 网站建设初期昆明seo关键词排名
  • 给网站做推广跨境电商怎么开店铺
  • 做网站开票是多少个点的票石首seo排名
  • 网站名称怎么变更关键词seo排名优化如何
  • 做购物网站开发价格影响seo排名的因素有哪些
  • 刷信誉网站怎么做北京百度推广客服电话多少