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

家居网站建设全网营销广州百度seo排名优化

家居网站建设全网营销,广州百度seo排名优化,网站的登录注册页面怎么做,电子商务师证官网目录前言问题介绍解决方案代码编写java语言版本c语言版本c语言版本思考感悟写在最后前言 当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~ 在此感谢左大神让我对算法有了新的感悟认识! 问题介绍 …

目录

  • 前言
  • 问题介绍
  • 解决方案
  • 代码编写
    • java语言版本
    • c语言版本
    • c++语言版本
  • 思考感悟
  • 写在最后

前言

当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~

在此感谢左大神让我对算法有了新的感悟认识!

问题介绍

原问题
给定int[][] arr 二维数组,转圈打印矩阵序列
如:
[12345678910111213141516]\begin{bmatrix} 1 & 2 & 3 & 4 \\ 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \\ 13 & 14 & 15 & 16 \end{bmatrix}15913261014371115481216

打印结果:1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10

解决方案

原问题
将打印过程拆解为两个步骤:
1、从外圈到内圈的过程为一个循环
2、转圈打印为一个循环
每一次外圈往内圈走一格时,向转圈方法传入(开头、宽度、高度)即可让转圈方法打印当前层

代码编写

java语言版本

原问题:

    /*** 二轮测试:转圈打印*/public static void spiralOrderPrintCp1(int[][] arr) {if (arr == null || arr.length == 0) {return;}// 横向int len = arr.length;// 纵向int len2 = arr[0].length;// 打印边界int boundR = len/2 + 1;int boundL = len2/2 + 1;int i = 0;int j = 0;while (i < boundR && j < boundL) {processCp(arr , i, j, len2, len);len-=2;len2-=2;i++;j++;}}/*** 二轮测试:打印一圈,支持长方形* @param arr* @param i 起点横坐标* @param j 起点纵坐标* @param wide 宽度* @param height 高度*/private static void processCp(int[][] arr, int i, int j, int wide, int height) {int i1 = i;int j1 = j;int wideBound = j + wide;int heightBound = i + height;// 横向while (j1 < wideBound) {System.out.println(arr[i1][j1]);j1++;}// j1此时超出去一个j1--;i1++;// 纵向while (i1 < heightBound) {System.out.println(arr[i1][j1]);i1++;}i1--;j1--;// 横向回while (j1 >= j) {System.out.println(arr[i1][j1]);j1--;}j1++;i1--;// 纵向回while (i1 > i) {System.out.println(arr[i1][j1]);i1--;}}public static void main(String[] args) {spiralOrderPrintCp1(new int[][]{{1,2,3},{5,6,7},{9,10,11},{13,14,15}});}

c语言版本

正在学习中

c++语言版本

正在学习中

思考感悟

矩阵的打印类型题目很多都是将整个复杂的过程拆解为几个单独的循环,循环预循环之间协作,通过入参进行通信。主要两个点:
1、过程拆解为几个小步骤可以使用循环实现
2、小步骤之间交互参数的确认

写在最后

方案和代码仅提供学习和思考使用,切勿随意滥用!如有错误和不合理的地方,务必批评指正~
如果需要git源码可邮件给2260755767@qq.com
再次感谢左大神对我算法的指点迷津!

http://www.hrbkazy.com/news/17783.html

相关文章:

  • 网站如何安装wordpress宣传产品的方式
  • pyhton做网站常用的网络推广的方法有哪些
  • 品牌高端网站建设公司优化网络推广外包
  • 怎么盗用网站seo研究中心好客站
  • 中小型网站有哪些如何在各大平台推广
  • 网站 app建设开发合作协议微信营销软件免费版
  • 南通外贸网站建设网站推广文章
  • 政府网站开发招标文件免费网站排名优化软件
  • 建设企业网站综合考虑建网站一般多少钱
  • 行业类网站模板学编程的正规学校
  • 网站建设的商业阶段万网域名管理平台
  • 网站开发外包费用网络广告联盟
  • 管理公司网站的职位网店推广实训系统
  • 贵州住房与城乡建设厅网站b站引流推广
  • 武汉专业做网站的公司有哪些常州网站推广
  • 无锡微网站制作谷歌搜索引擎363入口
  • wordpress 文章查询宁波免费seo在线优化
  • 昆山网站建设培训班运营推广怎么做
  • 深圳网站备案注销爱站网关键词查询
  • 贵阳网站建设制作seo兼职平台
  • 南安市网站建设中国培训网
  • html网站开发有没有专门帮人推广的公司
  • 怎样建立一个营销网站付费内容网站
  • 哪个网站可以兼职做效果图深圳电子网络推广查询
  • 网站文章图片加标签加百度指数排行榜哪里看
  • app网站开发哪里有北京网站定制公司
  • 祥云建站平台平台推广方式
  • 山东省建设厅执业资格注册中心网站长沙seo培训班
  • 怎么自己做淘宝客网站南召seo快速排名价格
  • 西安做网站需要多少钱互联网营销师证书有用吗