您的位置:首页 > 其它

腾讯笔试 蛇形矩阵

2016-09-02 10:10 162 查看

腾讯笔试 蛇形矩阵

输入:n

输出:蛇形矩阵

样例:

     3

     1 2 3 8 9 4 7 6 5

源码如下:

  package tengxun;

import java.util.Scanner;

public class Test {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner scan = new Scanner(System.in);

int n,i,j,number,minx,miny,maxx,maxy;

while(true){
n = scan.nextInt();
int arr[][] = new int

;

/*数组下标*/
i = 0;
j = 0;

/*控制边界值*/
minx = 0;
miny = 0;
maxx = n-1;
maxy = n-1;
number = 2;//填入数字
arr[0][0]=1;

while(true){
/*向右*/
while(j < maxy && number <= n*n){
arr[i][++j] = number++;
}

minx+=1;

/*向下*/
while(i < maxx && number <= n*n){
arr[++i][j] = number++;
}

maxy-=1;

/*向左*/
while(j > miny && number <= n*n){
arr[i][--j] = number++;
}

maxx-=1;

/*向上*/
while(i > minx && number <= n*n){
arr[--i][j] = number++;
}

miny+=1;

if(number > n*n){
break;
}
}
for(int x = 0;x < n;x++)
for(int y = 0;y < n;y++){
System.out.print(arr[x][y]+" ");
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  校招笔试