Java小议蛇形矩阵

描述: 蛇形矩阵是由1开始的自然数依次排列成的一个矩阵上三角形。 输入正整数n(n不大于100)输出,输出一个n行n列的蛇形矩阵。例如5行5列蛇形矩阵输出为:

fe52549fc720881f887c2f6bb6ea0ff1.png

类似于前面的输出螺旋矩阵的方法,每一次在数组中填写新的数字都有一个方向,与输出螺旋数组不同的是不是简单的上下左右四个方向,这里涉及到右,下,右上,左下四个方向,针对每步操作都需要想好对应的处理方法,如:

1- 向右上位置填写元素的时候可能会碰到行<0或者是列 >= n,如果行小于0,那么接下来就需要向右填写元素,列大于等于n,那么很明显接下来就要向下填写元素。

2- 向下添加元素时,也会碰到一些情况,例如行 >= n了,表示添加到最后一行了,此时需要向右移动,另外在第一列和最后一列向下添加元素情况也不一样,在第一列向下添加元素后,接下来应该向右上添加元素,在最后一列向下添加元素后接下来应该向左下添加元素。向左下和向右填写元素与这类似。

参考代码如下:

a22d3fadc9aaa9858dba80f646874bf4.png

ade8301635791bd8982583b7e4643e4c.png

a347a98749f340b22942ffa19a20daa1.png

bdb75d13e1208e974f57108fb0b64693.png

50443405116a02be88803dc49f860bf3.png

9f8c6c696e487bc716e643e4f76b6cb8.png

64b45129182006420373c3599398dcc8.png

a3a38b16ef7d8c24b710a248e3c8be90.png

ff0771b26eaecb46f12768b160119012.png

更多干货笔记关注微信公众号 : 老九学堂

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐