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

网站添加微信支付功能做网站后台主要负责什么

网站添加微信支付功能,做网站后台主要负责什么,网站怎么做音乐播放器,wordpress投稿页面路径怎么文章目录 螺旋方式打印矩阵1. 题目2. 解释3. 思路4. 代码5. 总结 螺旋方式打印矩阵 1. 题目 用螺旋的方式打印矩阵,比如下面的矩阵: 0 1 2 3 4 5 6 7 8 9 10 11打印顺序为:0 1 2 3 7 11 10 9 8 4 5 6 2. 解释 螺旋打印矩阵是指从外向内…

文章目录

  • 螺旋方式打印矩阵
    • 1. 题目
    • 2. 解释
    • 3. 思路
    • 4. 代码
    • 5. 总结

螺旋方式打印矩阵

1. 题目

用螺旋的方式打印矩阵,比如下面的矩阵:

0 1 2 3
4 5 6 7 
8 9 10 11

打印顺序为:0 1 2 3 7 11 10 9 8 4 5 6

2. 解释

螺旋打印矩阵是指从外向内顺时针方向依次打印矩阵的每一层元素。具体来说:

  1. 从左上角(0,0)开始,向右打印第一行的所有元素
  2. 向下打印最右列的元素(除去第一行已打印的元素)
  3. 向左打印最底行的元素(除去最右列已打印的元素)
  4. 向上打印最左列的元素(除去最底行和第一行已打印的元素)
  5. 重复这个过程,向内层螺旋,直到所有元素都被打印

对于示例矩阵,打印顺序如下:

  • 向右:0→1→2→3
  • 向下:7→11
  • 向左:10→9→8
  • 向上:4
  • 向右:5→6

3. 思路

我们可以使用四个边界变量来定义当前螺旋层的范围:

  1. 定义四个边界:上边界(top)、下边界(bottom)、左边界(left)、右边界(right)
  2. 按照顺时针方向依次打印:
    • 从左到右打印上边界行
    • 从上到下打印右边界列
    • 从右到左打印下边界行(如果上边界不等于下边界)
    • 从下到上打印左边界列(如果左边界不等于右边界)
  3. 每完成一圈螺旋,缩小边界范围(top++, bottom–, left++, right–)
  4. 重复上述过程直到所有元素都被打印

在这里插入图片描述
进行一圈圈的缩小,输出这两个点的边框的值

缩小到最后有三种情况:按照这个三种情况进行分情况输出
在这里插入图片描述

4. 代码

public class Problem04_PrintMatrixSpiralOrder {public static void printMatrixSpiralOrder(int[][] matrix) {int tR = 0;int tC = 0;int dR = matrix.length - 1;int dC = matrix[0].length - 1;while(tR <= dR && tC <= dC) {printLevel(matrix, tR++, tC++, dR--, dC--);}}// [a, b]是左上角,[c, d]是右下角public static void printLevel(int[][] matrix, int a, int b, int c, int d) {if( a == c ){for(int i = b; i <= d; i++){System.out.print(matrix[a][i] + " ");}}else if( b == d ){for(int i = a; i <= c; i++){System.out.print(matrix[i][b] + " ");}}else{int curC = b;int curR = a;while(curC != d){System.out.print(matrix[a][curC] + " ");curC ++;}while(curR != c){System.out.print(matrix[curR][d] + " ");curR ++;}while(curC != b){System.out.print(matrix[c][curC] + " ");curC --;}while(curR != a){System.out.print(matrix[curR][b] + " ");curR --;}}}public static void main(String[] args) {int[][] matrix = {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12},{13, 14, 15, 16}};printMatrixSpiralOrder(matrix);}
}

5. 总结

螺旋打印矩阵的关键在于:

  1. 使用四个边界变量(top, bottom, left, right)来定义当前螺旋层
  2. 按照顺时针方向依次打印四条边
  3. 每次完成一圈后缩小边界范围
  4. 处理特殊情况(单行或单列情况)

这种方法的时间复杂度是O(M×N),其中M和N分别是矩阵的行数和列数,因为我们只访问每个元素一次。空间复杂度是O(1),只使用了常数个额外变量。

螺旋遍历在图像处理、矩阵运算、二维数组操作等场景中有广泛应用。掌握这种遍历方式有助于解决许多与矩阵相关的问题。


文章转载自:

http://hHN4AyJj.qcwrm.cn
http://NnOWtWEa.qcwrm.cn
http://DRzri6QJ.qcwrm.cn
http://tmCpdgEK.qcwrm.cn
http://PfZXxFIQ.qcwrm.cn
http://k47Owd7h.qcwrm.cn
http://Fvup3IZo.qcwrm.cn
http://gZSvddWv.qcwrm.cn
http://l40qUkMc.qcwrm.cn
http://6pOAErgl.qcwrm.cn
http://4TxrSCo5.qcwrm.cn
http://5HLvI054.qcwrm.cn
http://FoH2vOv4.qcwrm.cn
http://YHG0Fc8E.qcwrm.cn
http://VCEENsOr.qcwrm.cn
http://VL7VEoIn.qcwrm.cn
http://0w2YSy1q.qcwrm.cn
http://YTrjUG7r.qcwrm.cn
http://IA8QzGsg.qcwrm.cn
http://AxdkAjYt.qcwrm.cn
http://l0osKw1S.qcwrm.cn
http://f3Ka1Mnj.qcwrm.cn
http://z3DTqMUO.qcwrm.cn
http://n6VfhBqY.qcwrm.cn
http://DmNvPN2T.qcwrm.cn
http://K6ApelFy.qcwrm.cn
http://ePwrHSPa.qcwrm.cn
http://z0uYLBOb.qcwrm.cn
http://BvL7BiI2.qcwrm.cn
http://cqvPofhd.qcwrm.cn
http://www.dtcms.com/wzjs/677797.html

相关文章:

  • 吉安哪家网站建设公司好游戏加盟平台
  • 那些提卡网站是怎么做的免费域名注册平台有哪些
  • 南宁网站建设兼职住房和城乡建设部标准定额司网站
  • 濮阳中强网站建设企业网站搜索推广
  • 怎么进入国外网站网站怎么做长截图
  • 网站风格下载本地dede网站怎么上线
  • 黄山区建设学会网站网站建设项目投资测算
  • 济南网站建设与维护著名设计网站
  • 网站管理建站中国品牌网站建设
  • 龙岗区网站制作怎么在百度上投放广告
  • 海口房产网站建设教资注册网站
  • 阿里云中英文网站建设手机企业网站程序
  • 杭州做网站的公司哪些比较好免费算命免费 生辰八字
  • 企业建网站开发wordpress 错误
  • 网站设计标注图怎么做网站建设费用多少
  • 网站开发计划和预算网站后台服务器内部错误
  • 沈阳公司网站建设2020一建试题
  • 自己想做网站中国空间站设计在轨飞行多少年
  • 重庆微信开发网站建设网站开发流程表
  • 大型门户网站建设效果怎么样小程序免费制作平台代码
  • ip地址直接访问网站官方旗舰店
  • 集团网站建网站模板兼容手机端
  • 官方网站建设建议做电影网站用什么软件叫什么名字
  • 西安网站制作西安搜推宝网络英文书 影印版 网站开发
  • 网站建设需要哪些知识套餐型网站建设合同
  • 个人做网站需要什么条件合肥app建设
  • 做网站算法wordpress恢复小工具
  • 什么值得买网站模板电脑设计图制作软件app
  • 娱乐网站建设方案爱站工具包的模块
  • 网站建设方案书模版0基础网站开发