`

蛇形排列

    博客分类:
  • java
 
阅读更多
package com;

public class T {

	public int x;
	public int y;
	public int[][] arr;
	public int WIDTH = 10;
	public static int num;
	public static int width;
	public static T t;

	public T() {
		arr = new int[WIDTH][WIDTH];
		num = 0;
		width = 0;
		x = 0;
		y = 0;
	}

	public void test() {
		for (int i = 0; i < WIDTH; i++) {
			for (int j = 0; j < WIDTH; j++) {
				{
					if (x == WIDTH - 1) {
						y = WIDTH - 1 - x;
						x++;
					} else {
						x = WIDTH - 1 - y;
						y++;
					}

					arr[x][y] = num;
					num++;
				}
			}
			width++;
		}
	}

	public void test2() {
		for (int j = 0; j < WIDTH; j++) {
			for (int i = 0; i < WIDTH; i++) {
				width++;
				for (int t = 0; t < width; t++) {
					width = i;
					x = i;
					y = width - x;
					num++;
					arr[x][y] = num;
				}
			}
		}
	}

	public void test3() {
		int i = 0;
		while (i < WIDTH) {
			int t = 0;
			while (t < width) {
				x = width - y;
				arr[x][y] = 0;
				x++;
			}
			width++;
		}
	}

	public void test4() {
		int width = 0;
		int post = 0;
		for (int i = 0; i < WIDTH * WIDTH; i++) {
			while (post <= width) {
				x = width - y;
				arr[x][y] = num;
				num++;
				post++;
			}
			width++;
		}
	}

	public void test5() {
		boolean left = false;
		width = 1;
		for (int i = 0; i < WIDTH; i++) {
			for (int j = 0; j < width; j++) {
				if (left) {
					x = width - 1 - y;
					arr[x][y] = num++;
					if (x != 0) {
						x--;
						y++;
					}
					if(y == 0)
					left = !left;
				} else {
					y = width - 1 - x;
					arr[x][y] = num++;
					if (y != 0) {
						y--;
						x++;
					}
					if(x == 0)
					left = !left;
				}
			}
			width++;
			left = !left;
			System.out.println(t.toString());
		}
	}

	@Override
	public String toString() {
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < arr.length; i++) {
			for (int j = 0; j < arr[0].length; j++) {
				if(arr[i][j] < 10)
					sb.append("0");
				sb.append(arr[i][j]);
				sb.append(' ');
			}
			sb.append("\n");
		}
		return sb.toString();
	}

	public static void main(String[] args) {
		t= new T();
		t.test5();
		System.out.println(t);
	}
}

分享到:
评论

相关推荐

    蛇形方阵_C语言_C语言蛇形输出_蛇形方阵_

    5. **处理边界**:当蛇到达数组边界时,需要根据当前方向调整填充的值,以保持蛇形排列。例如,如果蛇正向上移动并达到顶部,那么下一次应该向右移动;若向右移动并到达右侧,应向下移动。 6. **打印矩阵**:最后,...

    纯CSS3竖直蛇形时间轴代码.rar

    3. **定位(positioning)**:使用`position`属性(如`relative`, `absolute`, 或 `fixed`)来控制元素在页面上的位置,这对于实现蛇形排列的元素非常重要。 4. **Flexbox布局**:CSS3的弹性盒模型(Flexbox)可以...

    html5 canvas蛇形走位彩色像素块动画特效

    5. 蛇形走位算法:蛇形走位可以通过维护一个像素块数组来实现,每个元素代表蛇的一个身体部位。在每帧中,蛇头的位置会根据一定的方向规则改变,然后将蛇尾移动到蛇头的位置,形成连续的蛇形运动。同时,蛇的身体...

    行业文档-设计装置-一种换热装置中传热管的排列方法.zip

    3. 蛇形排列:管子呈S形布置,减小了管道长度,但可能因弯头增多导致压降增大。 三、新型传热管排列方式 根据提供的文件名,“一种换热装置中传热管的排列方法”很可能是对现有排列方式进行的优化或创新。这种新...

    Python笔试题之蛇形矩阵:

    输入一个正整数N(N不大于100),输出一个n行的蛇形矩阵。 示例输入: 5 示例输出: 1 3 6 10 15 2 5 9 14 4 8 13 7 12 11 解法一: while True: try: N = int(input()) tmp_begin = 1 # 第一行的数 for i in ...

    蛇形矩阵c++程序(数值排列)

    蛇形矩阵,也被称为“螺旋矩阵”,是一种特殊的二维数组,其元素按照螺旋形状填充。在C++编程中,实现蛇形矩阵通常涉及到数组操作、循环控制以及条件判断。以下是对这个话题的详细解释: 首先,我们需要理解蛇形...

    蛇行数的输出&&和奇数放到偶数前的算法

    结合这两个知识点,我们可以创建一个程序,输入一个二维数组,输出蛇形排列且奇数优先的序列。首先,我们需要遍历二维数组,将所有元素按行优先顺序放入一维数组中,然后使用上述的奇数放到偶数前的算法对一维数组...

    2022年安徽计算机软件水平考试考试模拟卷.docx

    * PowerPoint内置了多种动画效果,如百叶窗、溶解、蛇形排列、渐变等。 知识点10:PowerPoint幻灯片管理 * 在PowerPoint中,可以使用“幻灯片浏览”视图来管理幻灯片,并可以拖拽幻灯片来重新排列顺序。 知识点11...

    珠海市2021.02.25高三一模数学试题详解及评分参考--第四次校对 .pdf

    通过连续奇数的蛇形排列数表,确定特定奇数在数表中的位置,涉及数学归纳法与数列的求和技巧。 二、多选题详解: 1. 函数的性质与值域: 分析不同函数的定义域与值域,如对数函数和指数函数的性质及其取值范围。...

    利用数组打印蛇形数图形

    首先让我们来理解一下什么是蛇形数,它是一组用特定形式排列的数字图形,实现数字的排列就是最重要的问题。 我们通过几个例子,来说明一下蛇形数数组的排列方式是怎么样的,以本段代码产生的程序运行结果为例: 输入3...

    高二数学下学期教学段考试题 理(含解析) 试题.doc

    5. **序列与数列**:第五题讨论的是一个特殊的序列问题,即蛇形排列形成的宝塔形数表。理解这个序列的规律是解题关键。问题涉及到等差数列的求和公式以及归纳推理。 6. **复数的运算**:第六题考察复数的乘法和模的...

    纯CSS3竖直蛇形时间轴特效代码

    2. 非对称布局:通过改变li元素的浮动方式,可以实现蛇形排列。例如,偶数序号的li元素向左浮动,奇数序号的li元素向右浮动。 ```css .timeline &gt; li:nth-child(even) .timeline-panel { float: left; } .timeline...

    山东省选2011数据

    3. snake.zip:可能与“蛇形排列”有关,这是一种常见的选举投票显示方式,按照得票数量从高到低排列,形成类似蛇形的图案,便于视觉呈现选举结果。 4. mars.zip:这个名字可能源于“火星”(Mars),但在这里可能是...

    基于Cocos2d的迷宫游戏的设计与实现.pdf

    同时,游戏引入了蛇形排列的关卡设计,增加了视觉上的变化。特别地,通过引入脚印图形,当玩家成功找到出口时,界面会自动跳转至关卡选择界面,给予玩家明确的反馈。 判断游戏通过的模块至关重要,它通过检测玩家...

    乒乓球竞赛编排知识.pdf

    分组通常采用“蛇形排列法”,确保各组实力均衡。第二阶段比赛有多种组织方式,如同名次比赛或交叉分组,以决定最终排名。 对于分组循环赛的排名规则,国际竞赛规程规定: A. 每场比赛胜利得2分,失败得1分,未比赛...

    java 蛇形矩阵 最简单的 初学者用

    java 蛇形矩阵 最简单的 初学者用

    SmartArt智能图形概要.docx

    它可以展示垂直、水平或蛇形排列的步骤,适合解释业务流程、决策过程或操作指南。这种布局有助于观众理解事件的顺序和逻辑流程。 3. **循环型**:循环图适合描绘那些不断重复的过程,如生命周期、周期性活动或循环...

    运动会管理系统 ppt

    - **预赛分道算法设计**:遵循国家体育部门的要求,确保同单位不处于同一小组,采用蛇形排列或斜线法进行分组,同时考虑随机分配,以避免偏颇。 - **决赛分道算法设计**:基于预赛成绩,将数据存储在数据库中,...

    大学生acm竞赛——10年12月竞赛题库

    - 题目要求:在n*n的矩阵中填充1到n*n的数字,形成蛇形排列。 - 解决方案:使用二维数组a[][],根据蛇形路径的规律填入数字。对于每个位置(i, j),可以通过i和j的奇偶性确定当前是上行还是下行填充。 3. **最长...

Global site tag (gtag.js) - Google Analytics