二维数组顺时针输出
2016-08-25 20:22
141 查看
很简单的一个算法,结果弄了半天,最后发现是行和列弄错了,心塞塞
这种题还是找出数学规律重要
这种题还是找出数学规律重要
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package javaapplication1; /** * * @author YJZ */ public class PrintMatrixClockwisely { public static void PrintMatrix(int a[][],int columns,int rows){ if(a==null||columns<=0||rows<=0){ System.out.print("输入错误"); } int start =0; while(columns>start*2&&rows>start*2){ PrintMatrixInCircle(a,columns,rows,start); start++; } } public static void PrintMatrixInCircle(int a[][],int columns,int rows,int start){ int endX=rows-1-start; int endY=columns-1-start; //从左到右 for(int i=start;i<=endX;i++){ int number=a[start][i]; PrintNumber(number); } //从上到下 if(start<endY){ for(int i=start+1;i<=endY;i++){ int number=a[i][endX]; PrintNumber(number); } } //从右到左 if(start<endX&&start<endY){ for(int i=endX-1;i>=start;--i){ int number=a[endY][i]; PrintNumber(number); } } //从下到上 if(start<endX&&start<endY-1){ for(int i=endY-1;i>=start;--i){ int number=a[i][start]; PrintNumber(number); } } } public static void PrintNumber(int number) { System.out.print(number+" "); } public static void Text(int columns,int rows){ int[][] aa=new int[columns][rows]; int b=1; for(int i=0;i<columns;i++){ for(int j=0;j<rows;j++){ aa[i][j]=b; b++; } } PrintMatrix(aa,columns,rows); System.out.println(" "); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here Text(4,1); Text(1,4); Text(4,4); Text(1,1); } }
相关文章推荐
- c语言:使一个N*N二维数组输出呈顺时针螺旋递增
- 顺时针输出一个二维数组的内容
- Java实现顺时针输出螺旋二维数组的方法示例
- 顺时针绕圈输出二维数组(蛇形)
- 顺时针打印二维数组(螺旋输出数组)
- [Java Code]顺时针输出二维数组
- 二维数组的输出
- /*3.使用二维数组存储班上五个学生三门功课的考试成绩,要求输出每一个学生的总分、平均分、最高分、最低分。
- java数组练习2创建二维数组,并将数组中的内容输出到控制台
- 将一个二维数组顺时针旋转90°
- 申明一个一维数组跟二维数组 并都可以用print_r输出
- 使用指针输出二维数组的任意元素
- php foreach输出二维数组
- 用指针变量输入/输出二维数组元素的值
- Java 小例子:按照顺时针或逆时针方向输出一个数字矩阵
- python二维数组输出为图像
- 将二维数组用foreach遍历并以表格的形式输出
- 20_二维数组_输出魔方阵
- 矩阵顺时针螺旋输出2种不同的方法。
- 不借助二维数组,输出蛇形数组