ch2_8_1求解n阶螺旋矩阵问题

思路:循环输出,注意边界控制


import java.util.Scanner;

public class ch2_8_1求解n阶螺旋矩阵问题 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		int n=in.nextInt();
		while(n!=0) {
			
			print(n);
			n=in.nextInt();
		}
	}

	private static void print(int n) {
		// TODO Auto-generated method stub
		int a[][]=new int[n][n];
		int num=1;
		int i=0,j=0;
		while(num<=n*n) {
			while(j<n&&a[i][j]==0)
				a[i][j++]=num++;
			j--;i++;
			while(i<n&&a[i][j]==0)
				a[i++][j]=num++;
			i--;j--;
			while(j>=0&&a[i][j]==0)
				a[i][j--]=num++;
			j++;i--;
			while(i>=0&&a[i][j]==0)
				a[i--][j]=num++;
			i++;j++;
		}
		for(int m=0;m<n;m++) {
			for(int k=0;k<n;k++) {
				System.out.print(a[m][k]+" ");
				
			}
			System.out.println();
		}
	}

}

 

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 17:13
想去,但是听说加班强度实在难崩,所以拒绝了,现在有点心梗对面hr感觉也是实习生,打电话的时候怪紧张的,但是感觉人很好嘞
水中水之下水道的鼠鼠:哥们这不先去体验一下,不行再跑呗,大不了混个实习经历(有更好的转正offer就当我没说)
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务