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

自己做的视频网站如何赚钱/查询网站流量的网址

自己做的视频网站如何赚钱,查询网站流量的网址,国外采购网站有哪些,数据可视化网站本文实例讲述了Java实现的打印螺旋矩阵算法。分享给大家供大家参考,具体如下:一个N阶矩阵顺时针呈螺旋状,形如下面的矩阵:思路:使用一个二维数组存放数据,数组初始化为0,数组共有n平方个元素&am…

本文实例讲述了Java实现的打印螺旋矩阵算法。分享给大家供大家参考,具体如下:

一个N阶矩阵顺时针呈螺旋状,形如下面的矩阵:

76c9c111cc195853d525d362a7683938.png

思路:使用一个二维数组存放数据,数组初始化为0,数组共有n平方个元素,因为是从1开始,所以元素的值是从1到n×n。按照上面的路线从1开始遍历一遍填入数据,每填入一个数据时后,判断边界和方向(说明,任意长度和宽度都可以使用这个思路,本例使用N*N的矩阵说明)。直接上代码了:

package study.haishen.com;

/**

* @author Administrator

*

*/

public class SpiralMatrix {

/**

* @param n n阶

* @return

*/

public int[][] createMatrix(int n)

{

int[][] matrix = new int[n][n];//n*n的二维数组,初始元素值都为0

int right = 1, down = 2, left = 3, up = 4;//分别表示右下左上四个方向

int direction = right;

int numb = n * n;//n阶矩阵,共有n×n个数

int i = 0, j = 0;

for (int p = 1; p <= numb; p++)

{

matrix[i][j] = p;

//判断方向向右的情况

if(direction == right)

{

//如果当前位置的右面位置在右边界内且值还是初始值,则行不变,列号向右移动一位

if (j + 1 < n && matrix[i][j + 1] == 0)

{

j++;

} else {//如果超出右边边界,或者右面的元素已经被修改过,则向下移动一行,且将方向改为向下

i++;

direction = down;

continue;

}

}

//判断方向向下的情况

if (direction == down)

{

//如果当前位置的下面位置在下边界内且值还是初始值,则列不变,行号向下移动一位

if (i + 1 < n && matrix[i + 1][j] == 0)

{

i++;

} else {//如果超出下边界,或者下面的元素已经被修改过,则向左移动一行,且将方向改为向左

j--;

direction = left;

continue;

}

}

//判断方向向左的情况

if (direction == left)

{

//如果当前位置的左面位置在左边界内且值还是初始值,则行不变,列号向左移动一位

if (j - 1 >= 0 && matrix[i][j - 1] == 0)

{

j--;

} else {//如果超出左边界,或者左面的元素已经被修改过,则向上移动一行,且将方向改为向上

i--;

direction = up;

continue;

}

}

//判断方向向上的情况

if (direction == up)

{

//如果当前位置的上面位置在上边界内且值还是初始值,则列不变,行号向左移动一位

if (i - 1 >= 0 && matrix[i - 1][j] == 0)

{

i--;

} else {//如果超出上边界,或者上面的元素已经被修改过,则向右移动一列,且将方向改为向右

j++;

direction = right;

continue;

}

}

}

return matrix;

}

/**

* 测试

* @param args

*/

public static void main(String[] args) {

int n = 10;

SpiralMatrix s = new SpiralMatrix();

int[][] data = s.createMatrix(n);

for (int i = 0; i < n; i++)

{

for (int j = 0; j < n; j++)

{

System.out.print(data[i][j] + " ");

}

System.out.println();

}

}

}

http://www.jmfq.cn/news/4946275.html

相关文章:

  • 触屏版网站模板/朋友圈推广文案
  • 网站建设质量保证/优化网站排名技巧
  • 印刷报价网站源码下载/微信怎么做推广
  • 网站建设智能优化/百度云网盘登录入口
  • 广州协安建设工程有限公司网站/信息服务平台有哪些
  • 网站开发后怎么转安卓app/今日郑州头条最新新闻
  • 昆山靠谱的网站建设公司 豆瓣/查询网站备案信息
  • 谷歌镜像网站怎么做/南宁优化网站收费
  • 网站后台上传缩略图/企业网站推广模式
  • 网站开发的实验心德/微信营销软件排行榜
  • 星巴克网站建设方案/google play谷歌商店
  • 做食品网站有哪些/太原模板建站定制网站
  • 怎么用虚拟主机做网站/网络营销工程师培训
  • 哪家网站推广做的好/一键优化清理
  • 2017优秀网站设计/网络营销的方法包括哪些
  • 网站建设开发流程按钮/百度人工
  • wordpress网站专题/深圳seo公司排名
  • 网站开发款计入什么科目/宁波网站推广排名
  • 小程序免费制作平台有吗/seo优化技术厂家
  • 计算机怎么建设网站/seo诊断书
  • 做农产品网站需要做的准备/关键词优化设计
  • 开源html5 网站模板/巨量算数关键词查询
  • 网站备案与域名备案/深圳网络推广案例
  • 做网站免费/河南做网站的
  • 什么网站免费做游戏/江北seo综合优化外包
  • 怎么用PS做网站横幅/热搜榜百度一下你就知道
  • wordpress怎样搭建外贸网站/seo实战密码第四版pdf
  • 免费做封面的网站/抖音搜索排名
  • 重庆建设集团官方网站/肇庆seo按天收费
  • 做网站一般注册商标哪个类/网址之家大全