螺旋输出一组数组数据的实现
2014-10-24 22:03
330 查看
要螺旋输出一组数据,实现的解决方案:采用二维数组的形式来解决
结果如下:
实现如下:
这里我们定义一个类
结果如下:
实现如下:
这里我们定义一个类
public class LoopSort{ public static void main(String[] args){ //要螺旋输出的数据的个数 Scanner s=new Scanner(System.in); System.out.println("请输入螺旋输出的数据的行和列:"); int number=s.nextInt(); int code=s.nextInt(); s.close(); //定义一个存放数据的二维数组 int[][] numbers=new int[number][code]; //定义最小列 int minX=0; //定义最大列 int maxX=code-1; //定义最小行 int minY=0; //定义最大行 int maxY=number-1; //定义数据自增变量 int count=0; while(minX<=maxX){ //行不变,为最小行,列从小到大 for(int i=minX;i<=maxX;i++){ numbers[minY][i]=++count; } //这样第一行就不会在执行,就让最小行加一 minY++; //列不变,为最大列,行从小到大 for(int i=minY;i<=maxY;i++){ numbers[i][maxX]=++count; } //这之后最右边的列不再执行,就让最大列减一 maxX--; //行不变,为最大行,列从大到小 for(int i=maxX;i>=minX;i--){ numbers[maxY][i]=++count; } //最底层的行不再执行,就让最大行减一 maxY--; //列不变,为最小列,行从大到小 for(int i=maxY;i>=minY;i--){ numbers[i][minX]=++count; } //此时最左边的列不再执行,就让最小列加一 minX++; } // 对二维数组进行遍历,循环输出数组中保存的数据 for(int[] i:numbers){ for(int j:i){ String val=j<10 ? "0" : ""; System.out .print(val+j+" "); } System.out.println(); } } }
相关文章推荐
- 编写一个void sort(int*x,int n)实现将x数组中的n个数据从大到小排序。n及数组元素在主函数中输入。将结果显示在屏幕上并输出到文件
- 编写一个void sort(int*x,int n)实现将x数组中的n个数据从大到小排序。n及数组元素在主函数中输入。将结果显示在屏幕上并输出到文件
- 编写一段代码,实现在控制台输入一组数据后,排序后再控制台输出
- 编程题:用一组数组做函数参数来实现,输入两个数,输出其中最大数
- 数据结构数组相关算法和螺旋,蛇形,拉丁矩阵的实现
- Java 实现顺时针螺旋二维数组输出
- PHP连接MySQL数据库及以表格输出数据库数据的实现
- 第二章 基本数据类型,输入、输出,数组 分类: java 2009-12-29 16:48 339人阅读 评论(0) 收藏
- C语言 数组的顺序表示与实现 数据结构
- 汇编语言中常用进制数据输出的程序实现
- AudioFlinger向下访问AudioHardware,实现输出音频数据,控制音频参数
- Opengl绘制数组数据与文件数据的方法与Nvidia opengl sdk辅助实现
- 一组数据要以16进制写入byte数组中
- 用HashSet()实现重新建立一个没有重复数据的数组
- 【每天算法1】:用java 语言实现,输入一个数,就相应地输出的几维数组
- 存储过程实现:Split字符串获得数组的数据集合
- 基于数据成员是指向一个数组的指针来实现的list
- 对一维顺序数组螺旋输出到二维数组
- 实现统计数组中相同元素个数并输出
- 输入10个数据放入一维数组中,用泡排法对其排序并输出。