首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

螺旋矩阵的递归兑现

2012-12-28 
螺旋矩阵的递归实现package testpublic class Test {public static void main(String[] args) {printMatr

螺旋矩阵的递归实现

package test;public class Test {  public static void main(String[] args) {  printMatrix2(5);  }  public static void CreateMatrix(int n,int intValue,int circle)  { if(n<=0) return; for(int i=0;i<n;i++) { if(i==0) for(int j=0;j<n;j++) array[i+circle][j+circle]=intValue+j; if(i!=0&&i!=n-1) {array[circle+i][circle]=intValue+3*(n-1)+n-1-i; array[circle+i][circle+n-1]=intValue+n+i-1;} if(i==n-1) for(int j=0;j<n;j++) array[i+circle][j+circle]=intValue+2*n-2+n-1-j; } CreateMatrix(n-2,intValue+3*(n-1)+n-1,circle+1);  }  public static int[][] array;  public static void printMatrix2(int n)  {  array=new int[n][n];  CreateMatrix(n,1,0);  for(int i=0;i<n;i++){   for(int j=0;j<n;j++)   System.out.print(String.format("%5d",array[i][j]));   System.out.println();  }  }}

热点排行